Skip to main content

Full text of "197702 Interface Age"

See other formats


ifuicnrflLl 

MICROCOMPUTING  FOR  HOME  AND  SMALL  BUSINESS        VOL.  2.  ISSUE  3  FEB.  1977  $1.50 


Warp  Factor 


Microcomputer  Stock  Options 
LEGION:  Artificial  Intelligence 
Random  Number  Generator 


8080  Memory  Object  Code 
Search  Routine 

Basic  Algorithms  For 
Math  Functions 


WHY  SETTLE  FOR  LESS- 
THAN  A  6800  SYSTEM 


MEMORY- 


All  static  memory  with  selected  2102  IC's  al- 
lows processor  to  run  at  its  maximum 
speed  at  all  times.  No  refresh  system  is 
needed  and  no  time  is  lost  in  me- 
mory refresh  cycles.  Each  board 
holds   4,096    words  of  this 
proven  reliable  and  trouble 
free  memory.  Cost- 
only  $125.00  for 
each  full  4K 
memory. 


INTERFACE— 

Serial  control  interface  connects  to  any  RS-232,  or 
20  Ma.  TTY  control  terminal.  Connectors  pro 
vided  for  expansion  of  up  to  eight  interfaces. 
Unique  programmable  interface  circuits 
allow  you  to  match  the  interface  to  al- 
most any  possible  combination  of 
polaiity  and  control  signal  ar- 
rangements. Baud  rate  selec- 
tion can  be  made  on  each 
individual  interface.  All 
this  at  a  sensible  cost 
of  only  S35.00  for 
either  serial,  or 
parallel  type 


PROCESSOR- 


"Motorola"  M6800  processor 
with  Mikbug®  ROM  operating 
system.  Automatic  reset  and  load- 
ing, plus  full  compatability  with 
Motorola  evaluation  set  software.  Crystal 
controlled  oscillator  provides  the  clock  signal 
for  the  processor  and  is  divided  clown  by  the 
MC14411  to  provide  the  various  Baud  rate  outputs 
for  the  interface  circuits.  Full  buffering  on  all  data 
and  address  busses  insures  "glitch"  free  operation  with 
full  expansion  of  memory  and  interfaces. 


POWER 
SUPPLY- 


Heavy  duty  10.0  Amp  power 
supply   capable  of  powering  a 
fully  expanded  system  of  memory 
and  interface  boards.  Note  25  Amp 
rectifier  bridge  and  91,000  mfd  computer 
grade  filter  capacitor. 


DOCUMENTATION- 

Probably  the  most  extensive  and  complete  set  of  data  available  for  any 
microprocessor  system  is  supplied  with  our  6800  computer.  This  includes 
the  Motorola  programming  manual,  our  own  very  complete  assembly  in- 
structions, plus  a  notebook  full  of  information  that  we  have  compiled  on 
the  system  hardware  and  programming.  This  includes  diagnostic  programs, 
sample  programs  and  even  a  Tic  Tac  Toe  listing. 


Mikbug®  is  a  registered  trademark  of 
Motorola  Inc. 

"  mm®© 

Computer  System 
with  serial  interface  and  4,096  words 
of  memory  $395.00 


gsfl^  6SOO 


□  Enclosed  is  $395  for  my  SwTPC  Computer  Kit  □  Send  Data 

□  or  BAC   tt  

□  or  MC   _  Ex  Date  


ADDRESS 


CITY  STATE  ZIP 

Southwest  Technical  Products  Corp.,  Box  32040,  San  Antonio,  Texas  78284 


CIRCLE  INQUIRY  NO.  29 


Meet  the  most  powerful 
fxC  system  available  for  dedicated  work. 


Yet  it's  only  $595: 


Here's  the  muscle  you've  been  telling  us  you  wanted: 
a  powerful  Cromemco  microcomputer  in  a  style  and  price 
range  ideal  for  your  dedicated  computer  jobs — ideal  for 
industrial,  business,  instrumentation  and  similar  applica- 
tions. 

It's  the  new  Cromemco  Z-2  Computer  System.  Here's 
some  of  what  you  get  in  the  Z-2  for  only  $595: 

•  The  industry's  fastest  /xP  board  (Cromemco's  highly 
regarded  4  MHz,  250-nanosecond  cycle  time  board). 

•  The  power  and  convenience  of  the  well-known  Z-80 
/xP. 

•  A  power  supply  you  won't  believe  (  +  8V  @  30A, 
+  18V  and  —18V  @  15A  —  ample  power  for  addi- 
tional peripherals  such  as  floppy  disk  drives). 

•  A  full-length  shielded  motherboard  with  21  card  slots. 

•  Power-on-jump  circuitry  to  begin  automatic  program 
execution  when  power  is  turned  on. 

•  S-100  bus. 

•  Standard  rack-mount  style  construction. 

•  All-metal  chassis  and  dust  case. 

•  110-  or  220-volt  operation. 

DEDICATED  APPLICATIONS 

The  new  Z-2  is  specifically  designed  as  a  powerful  but 
economical  dedicated  computer  for  systems  work.  Notice 
that  the  front  panel  is  entirely  free  of  controls  or  switches 
of  any  kind.  That  makes  the  Z-2  vir- 
tually tamper-proof.  No  accidental 
program  changes  or  surprise  mem- 
ory erasures. 

FASTEST,  MOST 
POWERFUL  fiC 

Cromemco's  microcom- 
puters are  the  fastest  and 
most  powerful  available. 
They  use  the  Z-80  mi- 
croprocessor which  is 


Shown  with 

optional  bench  cabinet 


*kit  price 


widely  regarded  as  the  standard  of  the  future.  So  you're 
in  the  technical  fore  with  the  Z-2. 

BROAD  SOFTWARE/PERIPHERALS  SUPPORT 

Since  the  Z-2  uses  the  Z-80,  your  present  8080  soft- 
ware can  be  used  with  the  Z-2.  Also,  Cromemco  offers 
broad  software  support  including  a  monitor,  assembler, 
and  a  BASIC  interpreter. 

The  Z-2  uses  the  S-100  bus  which  is  supported  by  the 
peripherals  of  dozens  of  manufacturers.  Naturally,  all 
Cromemco  peripherals  such  as  our  7-channel  A/D  and 
D/A  converter,  our  well-known  BYTESAVER  with  its 
built-in  PROM  programmer,  our  color  graphics  interface, 
etc.,  will  also  plug  into  the  S-100  bus. 

LOW,  LOW  PRICE 

You'll  be  impressed  with  the  Z-2's  low  price,  technical 
excellence  and  quality.  So  see  it  right  away  at  your 
computer  store — or  order  directly  from  the  factory. 

Z-2  COMPUTER  SYSTEM  KIT  (MODEL  Z-2K)  (includes 
4  MHz  fiP  card,  full-length  21 -card-slot  motherboard, 
power  supply,  one  card  socket  and  card-guide  set,  and 
front  panel;  for  rack  mounting)  $595. 

Z-2  COMPUTER  SYSTEM  ASSEMBLED  (MODEL  Z-2W) 
(includes  the  above  as  well  as  all  21  sockets  and  card 
guides  and  a  cooling  fan;  for  rack  mounting  ), .  .  $995. 


EBRUARY  1977 


mem 


ncorpo    r  ated 
Specialists  In  compters  and  peripherals 
2432  CHARLESTON  RD.,  MOUNTAIN  VIEW,  CA  94043 
CIRCLE  INQUIRY  NO.  6 


(415)  964-7400  ,cy 
INTERFACE 


iiuTcnrflLE 

MICROCOMPUTING  FOR  HOME  AND  SMALL  BUSINESS 
VOL  2  ISSUE  3  FEBRUARY  1977 


Cover  Story 

This  month's  cover  is 
somewhat  reminiscent  of 
those  first  spectacular 
views  of  Mars  as  seen  by 
researchers  on  earth  as 
T.V.  signals  were  beamed 
back  over  the  many  mil- 
lions of  miles  through 
space. 

In  reality  it  is  a  setting 
for  a  major  announcement 
to  take  place  in  March. 

"Warp  Factor"  is  a  light 
hearted  scenario  high- 
lighting the  features  of 
the  newest  microcompu- 
ter kit  to  enter  the  personal 
computing  marketplace. 
Motorola  is  introducing 
the  HEP  EDUCATOR  II, 
a  small  system  designed 
for  the  economically  orien- 
ted student  or  computer 
hobbyist.  The  total  price 
for  this  nifty  little  box  of 
computing  tricks— $16995. 

You  may  start  looking 
for  Educator  II  in  your 
local  Byte  Shop  computer 
store  or  in  many  of  the 
selected  HEP  distributors. 


DEPARTMENTS 

Advertising  Index   128 

Book  Review  86 

Cover  Story  3 

FIFO  Flea  Market  126 

From  the  Fountainhead  10 

Hardware  Report   68 

Interfacial  4 

Letters  to  the  Editor  124 

Micro-Market  125 

New  Products  77 

Update  6 


FEATURES 

8080  OCTAL  MONITOR  PROGRAM  12 

A  PROGRAM  TO  CONTROL  By  Thomas  Doyle 

YOUR  8080  SYSTEM  FROM  ASCII 
KEYBOARD,  TTY  OR  CRT 

LEGION:  AN  EXPERIMENT  IN  ARTIFICIAL  INTELLIGENCE  21 

CAN  A  COMPUTER  BE  By  MARLIN ELLERS 

TRAINED? 

MICROCOMPUTER  STOCK  OPTIONS  I 

USING  YOUR  COMPUTER  By  EDWARD  CHRISTIANSON 

I  FOR  FUN  AND  PROFIT 
A  WORTHWHILE  APPLICATION 
THAT  CAN  PAY 
HANDSOMELY 

WARP  FACTORS   4C 

EXCLUSIVE  LOOK  AT  A  NEW  By  TOM  MAZUR 

I  MICROCOMPUTER  FROM  MOTOROLA  INC.,  PHOENIX,  AZ 

MOTOROLA 

BUILDING  A  12-BIT  A  TO  D  CONVERTER  - 

!  CONTINUING  A  SERIES  OF  By  ROGER  BROWN 

j  "HOW  TO"  BUILDING  A/D'S  FOR  YOUR 
COMPUTER 

CARD  OF  THE  MONTH— THE  TDL  ZPU™  I 

A  CRITICAL  LOOK  AT  By  ROGER  EDELSON 

THE  FIRST  Z-80  COMPUTER 
CARD 

COMPUTER  COUPLING  TO  TELETYPE  LOOPS  ( 

UPGRADING  THE  OLDER  By  B.  D.  LICHTENWALNER 

TELETYPES  FOR  HOME 
COMPUTER  USE 

THE  BLACK  BOX  I 

A  SIMPLISTIC  By  KENNETH  PUGH 

APPROACH  TO  UNDERSTANDING 
HARDWARE  AND  SOFTWARE 
DECISIONS 

SOFTWARE  FEATURES 

SOFTWARE  EDITORIAL  < 

RANDOM  BITS  &  BYTES  By  ROBERT  STEVENS 

NEED  A  BETTER  RANDOM  NUMBER  GENERATOR?  94 

By  ROBERT  MARTIN 

BASIC  ALGORITHMS  FOR  COMMON  MATH  FUNCTIONS  10 

By  MICHAEL  P.  BURTON 

LLL  8080  BASIC  INTERPRETER— PART  III  1Q4 

By  DAVID  MEAD,  HAL  BRAND  AND  FRANK  OLKEN 

AMI'S  EVK  SERIES  MICROCOMPUTER— PART  III  110 

By  ROBERT  STEVENS 

AN  8080  MEMORY  OBJECT  CODE  SEARCH  ROUTINE  121 

By  T  E.  TRAVIS 


INTERFACE  AGE  Magazine,  published  monthly  by  McPheters,  Wolfe  &  Jones,  13913  Artesia  Blvd.  Cerritos,  Calif.  90701.  Subscription  rates  US  $1000 
Canada/Mexico  $12,00.  all  other  countries  $18.00,  Opinions  expressed  in  by-lined  articles  do  not  necessarily  reflect  the  opinion  of  this  magazine  or  the 
publisher.  Mention  of  products  by  trade  name  in  editorial  material  or  advertisements  contained  herein  in  no  way  constitutes  an  endorsement  of  the  product 
or  products  by  this  magazine  or  the  publisher. 

INTERFACE  AGE  Magazine  COPYRIGHT  c  February  1977  by  McPheters,  Wolfe  &  Jones.  ALL  RIGHTS  RESERVED.  Material  in  this  publication  may  not  be 
reproduced  in  any  form  without  permission.  Requests  for  permission  should  he  directed  to  Nancy  Jones,  Rights  and  Permissions  McPheters  Wolfe  Si 
Jones,  13913  Artesia  Blvd.,  Cerritos,  Calif.  90701, 

PfJSTMASTEBr  Please  send  change  of  address  form  3579  and  undelivered  copies  to  INTERFACE  AGE  Magazine,  13913  Artesia  Blvd.,  Cerritos,  CatiL  90701 
Second-Class  postage  paid  at  Artesia.  California  90 701  and  at  additional  mailing  offices. 


2  INTERFACE  AGE 


FEBRUARY  1977 


Print  \four  Heart  Out 

With  help  from  the  Digital  Group,  naturally. 


Now,  that  small  computer  system  you  own  or  have  been 
considering  for  personal  or  business  use  suddenly  be- 
comes a  lot  more  usable — with  the  addition  of  a  full-si  zt- 
impact  printer  from  the  Digital  Group.  A  printer  designed 
for  small  computers  that  need  big  output  (like  yours). 

With  the  Digital  Group  printer,  you  can  print  your  heart 
out... and  it  won't  cost  an  arm  and  a  leg.  The  Digital 
Group  printer  is  available  for  less  than  $500.  That's 
right— $500. 


There  are  lots  of  capabilities  and  outstanding  features  of  the 
Digital  Group  printer. . .and  (as  always)  the  best  news  is 
our  price.  Kit  prices  start  as  low  as  $495  for  the  printer  and 
interface  card.  It  simply  can't  be  beat. 

Find  out  all  the  facts  about  the  Digital  Group  printer  now. 
Just  fill  in  the  coupon  below  or  give  us  a  call  for  the  details. 
We  think  you'll  find  a  place  for  our  printer  in  your  system 
. ..and  in  your  heart. 


Just  look  at  these  specifications: 

•  Fast — 120  characters  per  second 

•  96  characters  per  line 

•  12  characters  per  inch  horizontal 

•  6  lines  per  inch 

•  Makes  up  to  4  copies  simultaneously 

•  Character  set  and  pitch  variable  under  software 
control — double  width  characters,  etc. 

•5x7  character  matrix 

•  Ribbon  has  built-in  re-inkers  for  a  life  of 
10,000,000  characters 

•  Paper  can  be  either  a  standard  8V2-inch  roll,  fanfold 
or  cut  page 

•  Interfaces  to  8-bit  parallel  ports 


P.O.  Box  6528 

Denver,  Colorado  80206 

(303)  777-7133 

Quick.  I  want  to  print  my  heart  out. 

Send  me  all  the  details  on  your  full-size  impact  printer. 

Name  ^  

Address  

City /State/Zip  

Please  print. 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  7 


INTERFACE  AGE  3 


IFffliERFHGlflli 


Departing  this  month  from  our 
normal  immediate  plunge  into  the 
goodies  contained  in  this  issue,  I'm 
vectoring  to  a  much  requested  priority. 

Many  of  you  have  written  asking 
"Who  are  the  people  whose  names 
we  see  listed  on  the  masthead?" 

In  this  issue  and  for  the  coming 
several  issues,  we  shall  introduce 
the  staff  and  include  some  of  their 
background.  It  will  help  you  to  relate 
better  to  the  magazine  if  you  know 
who  performs  the  tasks  each  month 
of  getting  a  book  together  and  event- 
ually into  your  hands. 

This  month  the  Northwest  Regional 
Editor  and  the  Assistant  Editor  share 
the  spotlight. 

Dr.  Adam  Osborne  is  author  of  more 
than  50  works  on  computer  techno- 
logy and  is  familiar  with  a  wide  variety 
of  assembly  languages  used  by  vir- 
tually all  products  on  the  market. 


Formerly  a  computer  systems  en- 
gineer and  process  ^engineer  with 
Shell  Oil  Corp.,  Dr.  Osborne  now 
heads  his  own  firm,  Osborne  & 
Associates,  Inc.  He  is  a  graduate  of 
University  of  Birmingham,  England, 
(B.Sc),  University  of  Delaware, 
(M.Ch.E.  and  Ph.D.) 


Linda  Folkard-Stengel  has  long  exper- 
ience in  technical  journalism,  public 
relations  and  television  journalism. 


Quadrilingual,  she  was  formerly  with 
the  Overseas  Office  of  Design  News 
and  with  the  Mexico  City-based  offi- 
cial organ  of  the  Association  of 


Mexican  Travel  Agents,  AMAV  News. 
She  served  as  TV  News  Film  Librar- 
ian for  Canadian  Broadcasting  Cor- 
poration's English-language  anchor 
station  CBLT,  Toronto. 

This  month's  •  issue  has  been 
artfully  brushed  with  many  valuable 
software  articles  answering  the 
ever-  present  moan,  "Now  what 
do  I  do  next  with  my  system." 

To  help  fill  your  system's 
endless  appetite  Tom  Doyle  presents 
an  8080  Octal  Monitor  program 

Marlin  Ellers  gives  us  a  fanciful 
approach  to  artificial  intelligence  in 
LEGION,  an  attempt  at  machine 
learning  techniques. 

If  you  want  to  make  it  "big"  in 
the  stock  market,  but  have  a  problem 
understanding  what  you  should  do 
and  when,  then,  my  friend,  don't 
miss  reading  MICROCOMPUTER 
STOCK  OPTIONS.  This  theme  puts 
your  home  computer  to  work  profit- 
ably. 

Everyone  has  wondered  when  Moto- 
rola would  seriously  get  into  hobby 
computing.  Exclusive!  The  beginner 
now  has  the  HEP  EDUCATOR  II, 
the  first  step  to  a  bubble-packed 
computer  kit  available  at  over  1500 
electronics  stores  across  the  nation. 
It  is  coming  in  March,  but  read  about 
it  now  in  WARP  FACTORS  by  Tom 
Mazur. 

Continuing  with  construction  pro- 
jects, Roger  Brown  offers  another 
approach  to  A/D  converters  for  your 
personal  computing  activities.  Card- 
of-the-Month  features  the  TDL-ZPUtm 
CARD  with  Roger  Edelson  casting  a 
qualitative  eye  on  this  popular  pro- 
duct. 

For  those  who  have  the  older  tele- 
types, not  useful  to  home  computing 
applications,  rejoice.  A  possible  solu- 
tion to  a  conversion  for  the  rigs  is 
outlined  in  COMPUTER  COUPLING 
TO  TELETYPE  LOOPS  by  B.D.  Lich- 
tenwalner. 

Understanding  hardware  and  soft- 
ware concepts  is  outlined  in  ultra- 
simplistic  terms  by  Ken  Pugh  in 
THE  BLACK  BOX. 

Again  Bob  Stevens  has  corraled 
a  herd  of  useful  software  items 
by  many  talented  contributors  in 
the  avocational  and  vocational  com- 
puting fields. 


INTERFACE  AGE 

MAGAZINE 

13913  Artesia  Boulevard 
Cerritos,  CA  90701 
(213)  926-6629 


PUBLISHER  & 
EDITOR-IN-CHIEF 

ROBERT  S.  JONES 

ASSISTANT  EDITOR 

LINDA  FOLKARD-STENGEL 


ASSISTANT  MANAGER 

EVA  YAKA 

NORTHWESTERN 
REGIONAL  EDITOR 

ADAM  OSBORNE  PhD 

NEW  ENGLAND 
REGIONAL  EDITOR 

ROBERT  E.  TRIPP 

EDITORIAL  CO-ORDINATOR 

WILLIAM  SEVEDGE 

HARDWARE  EDITOR 

ROGER  EDELSON 

SOFTWARE  EDITOR 

ROBERT  STEVENS 

ASSOCIATE  EDITOR 

JANE  HILL  ALDEN 

PRODUCTION  LAYOUT 

MIKE  ANTICH 

ART 

CHARLYNE  LEVANDOWSKI 

SUBSCRIPTION  CIRCULATION 

JO  ANN  FERGUSON 

NATIONAL  SALES  MANAGER 

BRUCE  BERKEY 

ADVERTISING — Representative 

STEVE  RICHARDS 
ZACH  BOVINETTE 

RETAIL  CIRCULATION 

ZACH  BOVINETTE 

Editorial  Correspondence 

Direct  all  correspondence  to  the 
appropriate  editor  at:  INTERFACE 
AGE  magazine,  P.O.  Box  1234, 
Cerritos,  CA  90701.  Editorial  contri- 
butions must  be  accompanied  by 
return  postage  and  will  be  handled 
with  reasonable  care,  however, 
publisher  assumes  no  responsibility 
for  return  or  safety  of  manuscripts, 
art  work,  or  models. 


Advertising  Inquiries 

Direct  all  advertising  inquiries  to: 
Advertising  Department,  INTER- 
FACE AGE  magazine,  61  South 
Lake  Avenue,  P.O.  Box  4566, 
Pasadena,  CA  91106.  (213)  795- 
7002. 


4  INTERFACE  AGE 


FEBRUARY  1977 


POPULARITY  EXPLOSION! 


JUPITER  II  A 

6800  System 
$795 


If  you  thought  the  quality  of  a  wire-wrapp< 
system  was  beyond  your  price  Take  « 

look  at  what  we  hav~  now! 

The  Jupiter  Ma  ana  the  Jupiter  MIA  Basic 
computer  systems.  You  get  the  system  module 
cage  with  fully  assembled  backplane,  fully 
assembled  plug-in  ferro-resonant  power  supply, 
front  panel  kit  and  your  choice  of  6800  or  Z80 
CPU  module  kit.  All  less  than  the  price  of  the  two 
best  selling  8080  systems! 

Plus  you  can  choose  from  the  fastest  growing 
selection  of  memories  and  peripherals  available 
from  any  manufacturer,  like  our  2KB  EPROM/ 
4KB  RAM/serial  RS-232  module  which  can 
transform  your  basic  computer  system  into  a  real 
star. 

And  remember,  all  Wave  Mate  products  meet  the 
highest  quality  industrial  standards,  with  rugged 
construction  unmatched  by  anyone!  Join  the 
popularity  explosion  and  get  yours  now! 
Write  or  call  for  more  info  and  your  closest  Wave 
Mate  authorized  distributor. 


You  get  your  choice  of  microprocessors! 
And  you  get  wire-wrapped  modules  too! 


Now  you  have  a  low  cost  way  to  get  started 
into  personal  computing  without  sacrificing 
future  growth  capability! 


Send  information  on: 


NAME. 


□  Jupiter  HA  system 

□  Jupiter  MIA  system 


ADDRESS, 
CITY  


.STATE. 


ZIP  . 


WAVE  MATE  1015  West  190th  Street,  Gardena,  California  90248 
Dept24 


Telephone  (213)  329-8941 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  36 


INTERFACE  AGE  5 


NATIONAL  SEMICONDUCTOR 
ANNOUNCES  MICROPROCESSOR 
COURSES 

Santa  Clara,  CA  .  .  .  National 
Semiconductor  Corp.  is  offering  a 
series  of  microprocessor  training 
courses  at  its  Santa  Clara,  California, 
facility,  as  well  as  SC/MP  application 
courses  in  various  western  U.S.  cities. 

At  National  Semiconductor's  West- 
ern Microprocessor  Training  Center, 
1333  Lawrence  Expressway,  Santa 
Clara,  CA,  courses  will  be  given  in 
Microprocessor  Fundamentals  Febru- 
ary 21-24,  March  21-24,  April  18-21, 
and  June  6-9.  Courses  in  Advanced 
Programming  are  scheduled  for  Feb- 
ruary 7-10  and  May  9-12. 

Courses  on  the  application  of 
National's  PACE  microprocessor  will 
be  offered  at  the  Western  Training 
Center  on  February  28  -  March  3, 
April  25-28,  and  June  13-16.  SC/MP 
application  courses  will  be  given 
March  7-10,  March  28-31,  May  2-5, 
and  June  20-23. 

In  addition,  courses  on  the  appli- 
cations of  SC/MP  (Simple,  Cost- 
Effective  Microprocessor)  will  be 
presented  in  Seattle,  Washington, 
on  February  14-18;  in  Edmonton, 
Canada,  on  February  21-25;  in  Denver, 
Colorado,  i/i^rch  14-18;  and  in  Orange 
County,  California,  April  4-8.  Class 
hours  are  10  a.m.  to  5  p.rci. 

The  five-day  courses  given  in  the 
field  include  either  a  free  SC/MP 
kit  of  a  free  SC/MP  keyboard  kit  in 
the  total  fee  of  $395.  The  sessions 
discuss  the  fundamentals  and  tools 
of  SC/MP  microprocessors  in  detail 
to  allow  the  student  to  solve  any 
application  problems  he  may  encoun- 
ter. They  include  complete  SC/MP  lab 
stations  with  one  instructor  for  every 
six  students  for  close  lab  supervision. 
In  addition,  the  field  courses  feature 
hands-on  time  on  two  16-bit  IMP 
microprocessor  systems  (floppy  disc) 
for  high-speed  software  development 
and  PROM  programming. 

Registration  information  may  be 
obtained  from  local  National  Semi- 
conductor sales  offices  or  from  Na- 
tional's Western  Microprocessor 


Training  Center  in  Santa  Clara,  Calif- 
ornia, (408)  247-7924. 


AIAA  SEMINAR  ON  PROPOSAL 
PREPARATION 


A  seminar  in  proposal  preparation 
is  to  be  held  at  Gene  Autry  Hotel, 
Palm  Springs,  California  March  3-4, 
1977  and  at  Hyatt/Union  Square,  San 
Francisco  June  2-3,  1977.  Sponsored 
by  the  American  Institute  of  Aero- 
nautics and  Astronautics  (AIAA),  this 
two-day  seminar  deals  exclusively 
with  the  methods  for  winning  new 
business  via  the  proposal  route.  The 
main  themes  propose  to  instruct  how 
high  technology  products  and  ser- 
vices are  procured  by  various  U.S. 
government  agencies  and  how  the 
customer  picks  the  winners.  Present- 
ed over  seventy  times  in  three  years 
in  public  and  inhouse  versions,  the 
seminar  has  been  consistently  rated 
from  excellent  to  outstanding  by  its 
over  3,000  attendees  from  some  200 
companies,  80  government  agencies 
and  50  universities. 

The  seminar  is  in  nine  parts  under 
the  following  headings: 
Part  1:  The  Ideal  Proposal  Organiza- 
tion -  Authority  and  Responsibility; 
Part  2:  The  Important  Pre-proposal 
Programs;  Part  3:  Initiation  of  the 
Proposal  Effort;  Part  4:  How,  When 
and  Where  to  Spend  Resources;  Part 
5:  Learning  io  Communicate  in  a 
Written  Proposal;  Part  6:  the  Source 
Selection  Process;  Part  7:  Actual 
Preparation  of  the  Various  Proposal 
Sections;  Part  8:  Post-proposal  Acti- 
vities and  Tricks  of  the  Trade.  Regis- 
tration information  for  individuals 
and  groups  may  be  obtained  from 
AIAA  Seminar,  444  W.  Ocean  Bl. 
P.O.  Box  1710,  Suite  1403,  Long  Beach, 
CA  90801  -213  437-7465. 


NEWCLUB 


A  new  club  is  being  formed  for  the 
exchange  of  information  on  use  of 
Heathkit  products  by  computer  hob- 
byists. Write:  Computer  Heathkit 
Users'  Group,  c/o  Charles  Floto,  267 
A  Willow  St.,  New  Haven,  CT  06511. 


TRENTON  COMPUTER  FESTIVAL 

The  Second  Trenton  Computer 
Festival  will  be  held  at  Trenton  State 
College,  Route  1,  Trenton,  N.J.  from 
April  30,  1977  to  May  1,  1977. 
Featured  are  a  special  conference 
sponsored  by  IEEE  on  consumer  and 
hobby  applications  of  microcomput- 
ers, exhibits,  displays,  contests,  a  huge 
flea  market  for  hardware  and  software 
and  manufacturers'  booths. 

General  registration  is  $4.00  with  a 
special  students'  rate  of  $2.00  and 
sales  $2.00  per  spot.  For  advanced 
registration  or  information  call  Jaci  Di 
Paolo  at  (609)77 1  -2487  or  write  Tren- 
ton Computer  Festival,  Trenton  State 
College,  Trenton  N.J.  08625. 


CALENDAR 

Feb.  1  El  Paso  Computer  Group 
meets  at  7:00  p.m.  for  meetings 
place  call  (915)  544-1542. 

Feb.  2  New  England  Computer 
Society,  Inc.  meets  at  7:00  p.m. 
MITRE  Corp.,  Cafeteria,  Route  62 
Bedford,  MA.  Call  Dave  Day  at 
(603)  434-4239  for  more  infor- 
mation. 

Feb.  2  Northwest  Computer  Club 
meets  at  7:00  p.m.,  Pacific  Science 
Center.  Seattle,  WA.  Informal 
meetings.  Details  by  calling  (206) 
524-6359. 

Feb.  5  Louisville  Area  Computer 
Club  meets  at  1 :00  p.m.,  Speed 
Auditorium,  University  of  Louis- 
ville. General  meetings,  Contact 
Glen  Darwin  (502)  456-5589  or 
write  3028  Hunsinger  Ln.,  Louis- 
ville, KY;  40200. 

Feb.  6  Orange  County  Computer 
Club  meets  at  12:00  noon,  Califor- 
nia State  University  Fullerton, 
Administration  Bldg.,  Room  321. 
For  meeting  agenda  call:  Lorin 
Mohler  at  (714)  998-5831. 

Feb.  11  Crescent  City  Computer 
Club  meets  at  8:00  p.m.,  University 
of  New  Orleans,  Lakefront  Campus. 
For  more  information  contact  Bob 
Latham  (504)  722-6321. 

Feb.  1  1  Rochester  Area  Micro- 
computer Society  meets  at  6:30 
p.m.,  Room  1030,  Bldg.  9,  Roches- 
ter, NY.  Mailing  address,  RAMS, 
P.O.  Box  D,  Rochester  NY  14609. 


6  INTERFACE  AGE 


FEBRUARY  1977 


q  &  at 


NEW  Sphere  DOS- 


When  we  decided  to  redesign  our  already  successful  Disk  Operating  System,  we  asked  ourselves  how 
we  would  want  it  done.  Based  on  a  year  of  solid  experience  building,  shipping  and  supporting  a  good 
DOS,  we  decided  we  would  want  our  new  DOS  to  be  able  to: 

•  provide  a  complete  Editor  usually  found  only  with  minis 

•  offer  a  full-blown  Assembler  (not  just  a  small  mnemonic  set) 

•  handle  variable-length  files 

•  recognize  and  handle  both  stream  and  block-oriented  files 

•  deal  with  multiple  devices  of  several  types  f 

•  operate  on  both  our  300  and  500  systems. 

So,  we  designed  the  all-new  Sphere  DOS,  and  we  have  a  lot  of  good  reasons  for  calling  it  a  tiger!  It  is 
a  truly  remarkable  DOS  .  .  .  worth  checking  into.  Once  you  do,  we  think  you'll  find  it  easy  to  make 
the  decision  to 

PUT  THIS  TIGER  ON  YOUR  TEAM!!! 


LANGUAGE 

STORAGE  REQUIREMENT 
OPERATING  ENVIRONMENT 
CONVENIENCE  PROGRAMS 
PROVIDED 

PERIPHERALS  SUPPORTED 
STRUCTURE 


DOS  SPECIFICATIONS 

Motorola  M6800  Assembler 
5K  Bytes 

Sphere  300  and  500  Series  Systems 

Editor,  Debugger,  Assembler,  Set  of  File-manipulating  Commands  {macro- 
like  operations) 

CRT,  Keyboard,  Floppy  Disk  Drive,  TTY 
Uniform,  interrupt-driven  I/O 


Personal  and  commercial  computer 
product  distributorships  available. 
For  information  call  801-292-8466, 
CIRCLE  INQUIRY  NO.  31 


SPHERE 


CORPORATION 


940  North  400  East 

North  Salt  Lake,  Utah  84054 


(801)  292-8466 


NEW:  MATRIX  PUBLISHERS 


MICROCOMPUTER  DICTIONARY  AND  GUIDE 
Charles  J.  Sippl  and  David  A.  Kidd 

Over  8000  definitions  and  explanations  of  terms  and  concepts  relat- 
ing to  microprocessors,  microcontrollers  and  microcomputers.  Spe- 
cial sections  on  programmable  calculators;  math  and  statistics 
definitions;  flow  chart  symbols  and  techniques;  binary  numbers  and 
other  related  computer  terms.  There  is  also  a  comprehensive  elec- 
tronic/computer abbreviations  and  acronyms  section.  704  pages. 

PROGRAMMABLE  CALCULATORS 
Charles  J.  Sippl 

An  introductory  textbook  on  calculators  that  reviews  calculator 
capabilities,  usage  and  programming  from  the  basics  of  how  to  use 
keyboards,  special  function  keys  and  preprogrammed  units  to  ad- 
vanced programmable  calculator  systems  for  use  in  engineering, 
science  and  communication.  Includes  a  section  on  programming 
processes  and  procedures  for  calculators  and  a  glossary  of  calcu- 
lator terms. 

1024  QUESTIONS  AND  ANSWERS  ABOUT  HOME  COMPUTERS 
Richard  L.  Didday 

A  book  for  the  person  interested  in  microcomputers  who  wants  to  get 
an  idea  of  what  it  can  be  like  before  buying  the  equipment  and  for  the 
person  with  a  microcomputer  who  wants  ideas  for  things  to  do,  help 
in  reading  the  literature,  help  in  deciding  what  ways  to  go.  144  pages. 


I  /m 


MATRIX  PUBLISHERS,  INC. 

•j1      X  Dept.  IF,  207  Kenyon  Rd.  Champaign,  IL  61820 

X  \        /  Matr,x  books  also  available  in  Byte  Shops,  computer  stores,  and  bookstores. 

CIRCLE  INQUIRY  NO.  11 


contact  Bob  Goolta,  INTERFACE, 
160  Speen  Street,  Framingham, 
MA  01701 

April  19-21  Electro/77  meets  at 
New  York  Coliseum  and  Hotel 
Americana,  New  York,  New  York. 
For  more  information  write  Elec- 
tor/77, 999  N.  Sepulveda  Blvd.,  El 
Segundo,  CA  90245  or  call  (800) 
421-6816. 

May  10-12  Chicagoland  Business 
Services  and  Equipment  Exposition 
meets  at  Expocenter/Chicago.  For 
further  information  contact  Carleton 
Rogers,  Industrial  and  Scientific 
Conference  Management  Inc.,  222 
West  Adams  St.,  Chicago,  IL  60606 
or  call  (312)  263-4866. 

June  13-16  NCC,  Dallas,  TX.  For 
more  information  write  AFIPS,  210 
Summit  Ave.,  Montvale,  NJ  07645 
or  call  (201)  391-9810. 


Feb.  12  The  Permian  Basin 
Computer  Group,  Midland  Chapter 
meets  at  4:00  p.m.,  Midland  Col- 
lege, Occupational  Technology 
Bldg.,  Room  110,  General  Meet- 
ing. Call  (915)  697-4697  for  de- 
tails. 

Feb.  12  The  Permain  Basin  Com- 
puter Group,  Odessa  Chapter  meets 
at  1 :00  p.m.  Odessa  College  Elec- 
tronics Technology  Bldg.,  Room 
203.  Call  (915)  332-9151  for  more 
information. 

Feb.  26  So.  Cal.  SWTPO  MP  6800 
Users  Group  meets  at  1  0:00  a.m.  at 
A-VID  Electronics,  1655  E.  28th 
Street,  Long  Beach  CA  70806. 

Feb.  27  Chicago  Area  Computer 
Hobbyists  Exchange  (CACHE) 
meets  at  12:00  noon,  NIGAS  Bldg., 
Schermer  Rd.,  Glenview  IL.  Sick 
Computer  Show.  Bring  in  your 
problems  and  help  repair  them.  Call 
Bill  Precht  at  (312)  620-1671. 

Feb.  28-Mar.  3  IEEE  Computer 
Society's  COMPCON  '77  Spring 
beginning  at  9:00  a.m.  on  Feb.  28 
at  the  Jack  Tar  Hotel,  San  Fran- 
cisco. California. 

Mar.  2  New  England  Computer  So- 
ciety, Inc.,  meets  at  7:00  p.m. 
MITRE  Corp.,  Cafeteria,  Route  62, 
Bedford,  MA.  General  Meetings. 
Call  Dave  Day  at  (603)  434-4239. 


Mar.  7  AMRAD  Amateur  Radio 
Research  and  Development  Corp. 
meets  at  8:00  p.m.  in  the  Patrick 
Henry  Library,  Vienna,  VA  22101. 
Call  (703)  356-8918  for  details. 

March  9-1  1  DATACOMM  '77  meets 
at  Sheraton  Park  Hotel, 
Washington,  DC.  For  more  infor- 
mation contact  Shaun  Bresnahan, 
Director  of  Marketing,  DATACOMM 
77,  60  Austin  St.,  Newtonville,  MA 
02160  or  call  (617)  964-4550. 

Mar.  10  Rochester  Area  Micro- 
computer Society  meets  at  6:30 
p.m.  Room  1030,  Bldg.  9,  Roches- 
ter, NY.  Mailing  address,  RAMS, 
P.O.  Box  D,  Rochester  NY  146.09. 

Mar.  22  So.  Cal.  SWTPO  MP  6800 
Users  Group  meets  at  10:00  a.m.  at 
A-VID  Electronics,  1655  E.  28th 
Street,  Long  Beach,  CA  70806. 

Mar.  27  Chicago  Area  Computer 
Hobbyists  Exchange  (CACHE) 
meets  at  1  2:00  noon,  NIGAS  Bldg., 
Schermer  Rd.,  Glenview,  IL.  Small 
Business  Opportunities  Show.  For 
further  information  contact  Bill 
Precht  at  (312)  620-1671. 

March  28-30  The  5th  Annual  Data 
Communications  Conference  and 
Exposition,  INTERFACE  77  meets 
at  Georgia  World  Congress  Center, 
Atlanta,  GA.  For  more  information 


COMING  IN  MARCH  ISSUE... 

New  Products  Guide   

The  Computer  Even  a  Baby  Can 
Use 

by  Kenneth  Perry,  Basil  Steele 
Rocky  Ridges  and  Harry  Garland 

An   informative  glance   at  the 
future  of  microprocessors  in 
medical  applications 

Reflections  on  the  Past  and 
Thoughts  About  the  Future 
of  Semiconductor  Technology 
by  Dr.  C.  Lester  Hogan 

Dr.  Hogan  has  earned  the  title 
"Father  of  Semi-conductor 
Technology."   In  Reflections  this 
eminent  scientist  relates  an 
engrossing  travelogue  of  the  ar- 
duous adventures  encounter  by  him 
and  his  colleaguesthroughout  the 
years  of  development  of  the 
technology.  

The  Menace  of  the  Micro  World 
Another  essay  and  program  on 
artificial  intelligence 

The  Qube  by  Roger  Garrett 

Science-fiction  has  such  a 
provocative  way  of  becoming 
science-fact 

Building  a  Digital  Group  System 
by  Donald  0.  Southwick 

More  valuable  information  for  our 
hardware  readers 

And  for  our  software  readers, 
programs  on 

Depreciation  Schedule  Analysis 
Checkbook  Balance 
Game  of  Life 
— and  others 


8  INTERFACE  AGE 


FEBRUARY  1977 


The  Small  Computer 


Twenty- five  years  ago  a  computer  as  powerful  as  the 
new  Processor  Technology  Sol-20  priced  out  at  a  cool  million. 

Now  for  only  $995  in  kit  form  or  $1495  fully 
assembled  and  tested  you  can  have  your  own  small  computer 
with  perhaps  even  more  power.  It  comes  in  a  package  about  the 
size  of  a  typewriter.  And  there's  nothing  like  it  on  the  market 
today.  Not  from  IBM,  Burroughs,  DEC,  HP  or  anybody  else! 

It  fills  a  new  role 

If  you're  an  engineer,  scientist  or  businessman,  the 
Sol-20  can  help  you  solve  many  or  all  of  your  design  problems, 
help  you  quantify  research,  and  handle  the  books  too.  For  not 
much  more  than  the  price  of  a  good  calculator,  you  can  have  high 
level  computer  power. 

Use  it  in  the  office,  lab,  plant  or  home 

Sol-20  is  a  smart  terminal  for  distributed  processing. 
Sol-20  is  a  stand  alone  computer  for  data  collection,  handling 
and  analysis.  Sol-20  is  a  text  editor.  In  fact,  Sol-20  is  the  key 
element  of  a  full  fledged  computer  system  including  hardware, 
software  and  peripheral  gear.  It's  a  computer  system  with  a 
keyboard,  extra  memory,  I/O  interfaces,  factory  backup,  service 
notes,  users  group. 

It's  a  computer  you  can  take  home  after  hours  to  play 
or  create  sophisticated  games,  do  your  personal  books  and  taxes, 
and  a  whole  host  of  other  tasks. 

Those  of  you  who  are  familiar  with  small  computers 
will  recognize  what  an  advance  the  Sol-20  is. 


Sol-20  offers  all  these  features  as  standard: 

8080  microprocessor — 1024  character  video  display 
circuitry  —  control  PROM  memory  — 1024  words  of  static  low- 
power  RAM  — 1024  words  of  preprogrammed  PROM — built-in 
cassette  interface  capable  of  controlling  two  recorders  at  1200 
bits  per  second  —  both  parallel  and  serial  standardized  interface 
connectors  —  a  complete  power  supply  including  ultra  quiet 
fan  —  a  beautiful  case  with  solid  walnut  sides  — software  which 
includes  a  preprogrammed  PROM  personality  module  and  a  data 
cassette  with  BASIC-5  language  plus  two  sophisticated  computer 
video  games  —  the  ability  to  work  with  all  S-100  bus  products. 

Full  expansion  capability 

Tailor  the  Sol-20  system  to  your  applications  with  our 
complete  line  of  peripheral  products.  These  include  the  video 
monitor,  audio  cassette  and  digital  tape  systems,  dual  floppy 
disc  system,  expansion  memories,  and  interfaces. 

Write  for  our  new  22  page  catalog. 
Get  all  the  details. 

Processor  Technology,  BoxG,  6200  Hollis  St., 
Emeryville,  CA  94608.  (415)  652-8080. 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  26 


INTERFACE  AGE  9 


. . .  FROM  THE 
FOUNTAINHEAD 

;      *  4  By  Adam  Osborne 

■ « 

*  ■  ♦ , 


INTERFACE  AGE  I  will  bring  you 
recent  microprocessor  and  micro- 
computer happenings  in  the  North- 
west. I  will  concentrate  on 
developments  of  technical  interests 
rather  than  reviewing  society  meet- 
ings. The  companies  that  I  will  cover 
include  all  of  those  between  San  Jose 
and  San  Francisco  —  an  area  known 
affectionately  as  Silicon  Valley.  To  me 
this  is  the  "fountain  head"  from  which 
microprocessors  flow,  hence  the  title  I 
have  chosen  for  my  column.  Micro- 
processor manufacturers  within  this 
small  area  include  Intel,  National  Semi- 
conductor. Fairchild,  Intersil,  Sig- 
netics,  Scientific  Micro  Systems, 
Advanced  Micro  Devices,  American 
Microsystems,  Advanced  Memory 
Systems,  Electronic  Arrays,  Zilog  and 
Synertek.  Microcomputer  manu- 
facturers include  IMSAI,  Processor 
Technology,  Cromemco,  and  Apple  - 
and  the  Byte  shops  began  here.  These 
are  the  types  of  companies  whose  ac- 
tivities I  will  cover. 

If  you  have  information  about  your 
company  about  which  you  would  like 
me  to  write,  or  if  you  have  comments 
about  what  I  have  written,  please  call 
me  directly  at  (415)  548-2805. 

And  now  for  some  recent 
happenings  of  interest. 

Guess  who  will  sell  the  most  8-bit 
microprocessors  in  1977?  Intel  with 
the  8080?  Wrong!  Fairchild  with  the 
F8  will  outsell  the  8080  at  least  2-to-1 
—  providing  Fairchild  can  manu- 
facture enough  product  to  fill  orders. 
Yes,  Fairchild  is  currently  production 
bound.  Fairchild  has  orders  for 
between  two  million  and  three  million 
F8  microprocessors  in  1977. 

But  that  is  not  very  interesting  to  the 
low  volume  user  because  Fairchild's 
customer  base  consists  of  a  few.  very 
high  volume  accounts.  Low  volume 
and  individual  users  don't  take  too 
readily  to  the  F8. 

Zilog  is  doing  deceptively  well.  They 
are  currently  shipping  approximately 
5.000  CPUs  a  month.  That  does  not 
sound  like  many  when  stacked  up 
against  8080  or  F8  sales,  but  numbers 
can  be  misleading.  Big  sales  volume 
doesn't  come  until  manufacturers  put 
the  Z80  into  something  that  sells  tens 
of  thousands  of  units  monthly. 
Typically  it  takes  two  years  for  a  big 
user  to  bring  a  product  with  such  large 
sales  volume  to  the  market.  All  those 
guys  who  will  be  buying  10,000  Z80 
CPUs  a  month,  now  are  buying  5  or  10 
at  a  time.  Zilog's  present  customer 
base  suggests  that  Zilog  will  be  selling 
many  Z80's  in  1  979.  Exxon  be  patient. 

Intel's  answer  to  the  Z80,  the  8085, 
is  finally  here.  Is  it  a  mouse  or  a  power- 
house? It  has  the  same  instruction  set 
as  the  8080A,  with  just  two  additional 
I/O  instructions  —  but  it  uses  a  single 
power  supply  and  condenses  the 
8080A,  8224  and  8228  into  a  single 
chip.  But  the  8085  address  and  data 


buses  are  multiplexed.  When  Intel 
went  from  the  8008  to  the  8080  I 
thought  one  of  the  big  advances  was  to 
get  rid  of  multiplex  data  and  address 
buses. 

The  8048  is  Intel's  answer  to  the 
F8.  It  is  a  single  chip  microcomputer, 
complete  with  CPU,  interrupt  logic. 
ROM,  RAM,  and  I/O.  The  8748  is  a 
version  with  erasable  ROM  and  that 
should  make  the  chip  the  darling  of  all 
small  manufacturers. 


Fairchild  cannot  make  erasable 
ROMs  so  they  are  coming  up  with  a  40 
pin  package  that  combines  the  new, 
one  chip  3859  F8  microcomputer  with 
external  erasable  ROM.  If  the  price  is 
right,  so  is  the  product. 

For  all  of  you  8080A  users  who  are 
into  hardware,  Advanced  Micro 
Devices  is  coming  out  with  a  book 
which  you  must  buy.  It  is  packed  with 
all  kinds  of  good  design  tips.  Contact 
Andrew  Allison  or  Joe  Kroeger  for 
details.  And  plan  on  spending  some 
money;  the  book  costs  $10  but  it  is 
worth  the  price. 

Some  big  names  are  impressed 
enough  with  the  microcomputer  hobby 
market  to  jump  on  the  band  wagon. 
Pertec  has  bought  MITS.  the  father  of 
the  Altair  and  the  hobby  market,  and 
iCOM  who  built  the  first  floppy  disk 
drive  to  interface  with  micro- 
processors. iCOM  uses  Pertec  floppy 
disk  drives  so  Pertec  is  simply  buying 
its  best  customer.  But  did  you  know 
that  when  the  guys  who  started  iCOM 
first  went  to  Pertec  to  buy  drives,  they 
had  to  pay  cash  on  the  barrel  head? 
Pertec  thought  they  were  too  flaky  for 
credit.  Eighteen  months  later  Pertec 
bought  them  for  a  quarter  of  a  million 
Pertec  shares.  Not  bad  for  18  months' 
work. 

But  that  is  not  the  only  Pertec  story. 
Stu  Mabon.  Eric  Dunstan,  et.  al  started 
Pertec  in  a  garage,  back  in  1  968.  Stu 
Mabon,  Eric  Dunstan,  et.  al.  have  quit 
Pertec  and  have  started  another  new 
company.  Wait  for  those  guys  to  an- 
nounce some  big  floppy  disk  break- 
throughs in  the  next  three  months. 

Have  you  heard  the  rumors  about 
Heath  Kit  getting  into  the  micro- 
computer hobby  market?  They  are  all 
true.  Starting  late  this  summer  the 
Heath  Company  will  be  marketing  a 
very  well  known,  big  name  micro- 
computer system  at  a  low.  low  price. 
And  won't  it  be  nice  to  have  Heath  Kit 
quality  documentation  to  workfrom  for 
a  change? 

How  will  all  of  the  other  retail  out- 
lets react  to  Heath  Kit?  Those  with 
multiple  lines  will  make  it.  Any  retail 
store  that  markets  just  one  micro- 
computer is  severely  handicapped  in 
competition  with  retail  outlets  such  as 
the  Byte  Shops  which  carry  multiple 
lines.  After  all,  what  successful  stereo 
and  sound  system  stores  try  to  sell  just 
one  line?  I  predict  that  the  stores 
marketing  just  one  microcomputer  line 
will  diversify  or  go  under. 


u 

Let  me  introduce  myself,  I  am  Adam 
Osborne.  Starting  with  this  issue  of 
.INTERFACE  AGE,  (  will  be  the  North- 
west regional  editor.  In  every  issue  pi 


10  INTERFACE  AGE 


FEBRUARY  1977 


PRIME  RADIX 


WE  DO  IT  WITH  MIRRORS! 

(and  some  very  sophisticated  state-of-the-art  memory  design) 


You've  probably  imagined  that  someday  you'd  like  to  own  a 
computer  system  with  a  full  complement  of  memory: 

65,536  BYTES 

Your  dream  can  be  a  reality  with  the  Prime  Radix  Corporation's 
64Ktm  memory  system  at  a  very  cost-effective  price.  And 
because  it  is  a  standalone  memory  system,  you've  got  the 
advantage  of  greater  flexibility  not  ordinarily  available  from 
add-in  memory.  Some  of  the  features  are: 

•  The  64Ktm  is  fully  buffered,  presenting  one  TTL  load  to  the 
memory  bus. 

•  The  64Ktm  is  digital  group  bus  and  ALTAIRtm  bus 
compatible.  When  ordering,  you  must  specify  the  bus 
architecture.  A  plugcard  and  cable  will  be  furnished  for  the 
particular  bus  architecture  you  specify. 

•  The  minimum  complement  of  memory  is  40K  BYTES,  with 
starting  address  locations  at  OK,  8K,  16K,  or  24K. 


•  The  64Ktm  comes  assembled  and  tested  with  its  own  power 
supply,  attractively  housed  in  an  aluminumcabinet,  ready  to 
plug  into  your  system. 

•  Psuedo-static  operation:  on  board  refresh  clock-generator 
provides  processor  independent  refresh  with  no  wait  states. 
The  300NS  worst  case  access  time  enhances  high  speed 
operation. 

•  Power/fail  detection  circuitry  and  battery  backup  will 
provide  non-volatile  memory  (batteries  are  optional  at  extra 
cost). 

LIST  PRICE  IS  AS  FOLLOWS: 

40K  48K  56K  64K 

$1490.00  $1580.00  $1670.00  $1750  00 

We  are  offering  a  special  introductory  ten  percent  discount  off 
list  price  on  all  orders  received  on  or  before  February 28, 1977. 
Delivery  will  be  made  in  the  same  sequence  as  orders  are 
received.  Please  allow  3  to  6  weeks  for  delivery.  Mastercharge 
and  BankAmericard  are  accepted. 


P.O.  Box  11245  -  Denver  CO  80211      (303)  422-7040  or  (303)  433-5630 


Print  Name 


□  DIGITAL  GROUP  BUS 

□  ALTAIRtm  BUS 

□  64K  @  $1750.00 

□  56K  @  $1670.00 

□  48K  @  $1580.00 

□  40K  @  $1490.00 


Address 


City 


State 


Zip 


□  Check  or  M.O.  enclosed 

□  Charge  BAC 

□  Charge  MC 

(Please  No  C.O.D.'s  or  P.O.'s) 


Make  checks  or  money  orders  payable  to: 

PRIME  RADIX.  INC. 
P.O.  Box  1 1245 
Denver.  Colorado  8021  1 


Credit  Card  Number 


4  Numbers  Above  Name  (MC)Good  Thru 


Signature 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  25 


INTERFACE  AGE  11 


8080  OCTAL  MONITOR  PROGRAM 

 By  Thomas  E,  Doyle 


INTRODUCTION 

This  monitor  program  will  enable  you  to  control  your 
8080  system  from  an  ASCII  keyboard  and  a  TTY  or 
CRT  readout.  All  standard  front  panel  control  func- 
tions (examine,  examine  next,  deposit,  load  and  run) 
are  provided  in  octal  format.  Audio  cassette  input  and 
output  functions  as  well  as  a  loader  for  MITS  software 
are  also  included.  Once  you  have  this  monitor  in  ROM, 
the  drudgery  of  entering  and  reading  data  from  the 
front  panel  switches  and  lights  is  all  but  eliminated. 

PORT  ASSIGNMENTS 

The  monitor  is  designed  to  operate  in  an  8080  sys- 
tem with  keyboard  data  input  on  port  1  and  keyboard 
data  available  checked  on  port  0,  LSB  (active  low). 
Data  output  is  also  available  on  port  1  with  terminal 
ready  to  receive  data  checked  on  port  0,  MSB  (active 
low).  The  audio  cassette  interface  data  are  on  port  7 
with  status  checked  on  port  6.  These  standards  cor- 
respond with  MITS  port  assignments  used  for  the  ACR 
and  serial  I/O  boards  used  in  Basic  and  Package  II  soft- 
ware. 

MEMORY  REQUIREMENTS 

Required  are  512  bytes  of  memory  which  may  be 
ROM  or  RAM.  The  program  may  be  located  anywhere 
in  memory.  A  source  object  listing  assembled  to  start 
at  376  000  is  included  at  end  of  text.  The  best 
configuration  is  to  put  the  monitor  in  EROM  and  lo- 
cate it  in  a  high  memory  location  so  it  may  reside  con- 
currently with  programs  in  the  low  RAM  address.  The 
program  is  organized  as  a  series  of  general  purpose 
subroutines  which  may  be  called  from  user  programs. 

MONITOR  FUNCTION 

The  monitor  functions  are: 

EXAMINE  (E)  User  types  in  octal  address  of 

memory  location  he  wishes  to 
examine  and  the  computer  prints 
out  the  address  and  data  in  oc- 
tal format.  HHH  LLL  :  DDD  : 

EXAMINE  NEXT  (SPACE)  When  in  the  examine 
mode  the  user  may  type  the 
space  bar  and  the  computer  will 
print  the  address  and  data  for 
the  next  location  in  memory  in 
octal  format.  HHH  LLL  :  DDD  : 

DEPOSIT  (D)  After  examining  a  location  the 

user  may  deposit  new  data  in 
that  location  by  typing  the  letter 
D  followed  by  the  new  data  in 
octal  format.  The  computer 
checks  for  proper  storage  by  typ- 
ing out  the  octal  equivalent  of 
the  data  actually  stored  at  that 
address.  HHH  LLL  :  DDD  :  D 
XXX  XXX 

Where  XXX  is  the  new  octal  data  the  user  wishes  to 

deposit  at  the  address. 
Note:  You  must  examine  a  location  before  you  can 
deposit  data  in  that  location. 

RUN  (R)  After  examining  a  location  the 

user  may  elect  to  start  program 
execution  at  that  address  by  typ- 


ing the  letter  R. 
Note:  you  must  examine  a  location  before  you  can 
begin  program  execution  at  that  location. 

LOAD  (L)  After  examining  a  location  the 

user  may  elect  to  load  octal  data 
in  sequential  addresses  by  typ- 
ing in  L  followed  by  the  octal 
data.  After  the  third  digit  in  each 
octal  number  the  computer  will 
deposit  the  data  in  that  address 
and  check  it  as  in  the  deposit 
mode,  increment  the  address 
and  automatically  accept  the 
next  octal  number.  This  mode  is 
useful  when  you  have  a  large 
amount  of  data  to  enter  in 
sequential  locations. 

Note:  You  must  examine  the  starting  address  before 

you  can  begin  loading. 

TAPE  OUTPUT  Typing  an  O  will  select  the  tape 
output  mode.  The  Comput- 
er will  ask  for  the  starting  and 
ending  addresses  for  the  block  of 
data  you  wish  to  put  on  cas- 
sette tape.  After  typing  in  the 
start  and  finish  addresses,  type 
space  to  begin  output.  The  com- 
puter will  record  two  STX  char- 
acters (002)  followed  by  the 
data.  When  it  is  finished  the  ter- 
minal will  print:  indicating  it  is 
through  outputting  data  to  the 
tape  and  is  ready  for  a  new  com- 
mand. 

TAPE  INPUT  (I)        Typing  an  I  will  select  the  tape 
input  mode.  The  computer  will 
ask   for   the   starting  address 
where   you   wish   to  begin 
depositing  the  data  from  the  cas- 
sette tape.  Type  a  space  follow- 
ing the  address.  When  you  are 
through  entering  the  tape,  type 
in  a  carriage  return  and  the  com- 
puter will  print  a  :  indicating  it  is 
ready  for  a  new  command. 
Note:  the  system  will  not  automatically  return  to  com- 
mand mode  at  the  end  of  the  tape.  You  must  type  car- 
riage return. 

BOOT  STRAP  (B)  Typing  a  B  will  copy  a  modified 
MITS  cassette  boot  strap  loader 
for  8K  Basic  down  into  RAM 
starting  at  location  000  000. 
After  typing  B,  type  a  space  and 
start  your  basic  tape.  No  need  to 
wait  the  15  seconds.  This  fea- 
ture will  be  greatly  appreciated 
by  those  who  have  grown  weary 
of  toggle  switching  the  boot 
strap  in.  Since  the  boot  strap  is 
copied  into  RAM  you  may  make 
any  necessary  changes  before 
starting  execution. 

Note:  Typing  a  carriage  return  will  return  the  monitor 


12  INTERFACE  AGE 


FEBRUARY  1977 


to  the  command  mode. 

SUBROUTINES  AVAILABLE  FOR  USER  APPLICATIONS 

Several  of  the  subroutines  used  in  the  monitor  may 
be  used  to  handle  I/O  in  user  programs.  These  sub- 
routines save  all  used  registers  so  it  is  only  necessary 
to  call  the  subroutines. 

PNT:  Prints  the  contents  of  the  accumulator  on  the 
terminal  connected  to  port  1. 

INP:  Inputs  data  from  the  keyboard  and  returns  with 
the  data  in  the  accumulator.  The  routine  INP 
(page  2  000)  is  not  used  in  the  program.  It  is  a 
general  purpose  routine  for  input  from  a  key- 
board and  returning  with  the  keyboard  data  in 
the  accumulator.  It  was  included  as  a  general 
purpose  routine  for  use  in  other  programs. 

CRL:  Outputs  an  ASCII  carriage  return  and  linefeed. 

SPC:  Outputs  an  ASCII  space. 

POC:  Prints  the  octal  equivalent  of  the  accumulator 
contents. 

IOC:  Inputs  a  3  digit  octal  number  from  the  keyboard 
and  returns  with  data  in  accumulator. 

TOT:  Outputs  the  contents  of  the  accumulator  to  the 
audio  cassette  interface. 

TIN:  Inputs  from  the  audio  cassette  interface  and  re- 
turns with  the  data  in  the  accumulator. 

PROGRAM  EXPANSION 

Provision  for  simple  expansion  of  the  program  is 
provided  for  by  including  a  group  of  3  NO-OPS  in  two 
critical  locations.  The  end  of  the  print  (PNT)  sub- 
routine contains  3  NOP's  which  may  be  used  for  a  call 
to  a  special  I/O  handler  program  (i.e.  ASCII  to 
BAUDOT  converter).  The  input  control  (INC)  subrout- 
ing inputs  from  the  keyboard  and  runs  through  a  series 
of  comparisons  to  determine  which  command  is  pres- 
ent. If  the  program  reaches  the  .  bottom  of  the  list  of 
comparisons  without  finding  a  match  it  enters  a  de- 
fault routine  which  prints  a  ?  indicating  that  an  invalid 
command  was  present.  Three  NO  -  OPS  are  included 
just  ahead  of  the  default  routine  to  allow  calling 
another  set  of  comparisons  and  associated  jumps  for 
additional  commands. 

This  monitor  is  by  no  means  the  ultimate  but  it  does 
provide  all  basic  control  of  the  microcomputer  and  I/O. 
The  length  was  arbitrarily  limited  to  512  bytes  so  it 
could  be  held  on  two  1702  type  PROMS.  Possible 
areas  for  expansion  are: 

•  Tape  verify  routine,  after  a  block  of  memory  has 
been  recorded  on  audio  cassette  it  could  be  read  in 
and  verified. 

•  HEX  format,  basic  monitor  functions  handled  in  HEX 
format. 

•  Cassette  I/O  improvements,  inclusion  of  file  names 
and  checksum  on  input  and  output  routines. 

NOTES  ON  MODIFIED  MITS  BOOTSTRAP  LOADER 

This  routine  copies  the  modified  bootstrap  loader, 
which  is  stored  in  the  monitor  program  starting  at 
(page  2  016),  down  to  RAM  starting  at  (000  000). 
After  the  routine  has  been  copied  down  the  routine 
waits  for  a  key  to  be  pressed  on  the  keyboard.  If  any 
key  other  than  a  carriage  return  is  pressed  program 
execution  will  begin  at  the  start  of  the  bootstrap  (000 
024).  THe  loader  that  is  copied  down  is  for  MITS  8K 
BASIC  version  3.2. 

If  you  wish  to  load  software  other  than  8K  BASIC, 
after  typing  B  type  a  carriage  return.  You  will  now  be 
back  in  the  command  mode  and  you  can  change  what 


ever  you  need  to  by  changing  memory  location  (000 
002)  to  017  for  4-K  Basic  and  Programming  System 
II  or  to  057  for  EXTENDED  BASIC  in  the  bootstrap. 
After  making  the  changes,  begin  execution  at  (000 
024). 

The  routine  waits  for  the  correct  character  marking 
the  beginning  of  MITS  tapes  (Memory  page  2  Address 
044).  For  most  current  software  this  is  256.  If  you 
have  an  old  version  change  location  (000  027)  to  what 
ever  character  starts  your  tape.  (Some  older  tapes  use 
175) 

NOTES  ON  LISTING 

The  Program  is  contained  on  two  256  word  pages. 
The  first  page  contains  the  instructions  for  the  com- 
mands. The  second  page  contains  the  general  purpose 
subroutines.  The  two  pages  do  not  have  to  be  adja- 
cent in  memory.  The  listing  includes  object  code  for 
page  1  with  a  high  address  of  376  and  page  2  with  a 
high  address  of  377.  These  page  references  are  under- 
lined in  the  listing.  Changing  these  page  references  in 
the  jump  and  call  commands  will  allow  the  program  to 
run  in  any  two  blocks  of  memory,  location  of  the  stack 

The  first  instruction  (376  000)  sets  the  stack 
pointer.  Location  of  the  stack  pointer  is  dependent 
upon  user's  ram  configuration  and  may  be  changed 
depending  on  your  available  memory. 

PORT  ASSIGNMENTS  MAY  BE  CHANGED  BY 
CHANGING 

FOR  KEYBOARD  STATUS 
FOR  KEYBOARD  DATA 
FOR  DISPLAY  STATUS 
FOR  DISPLAY  DATA 
(PAGE  2  136)  FOR  ACR  BOARD 


(PAGE  2 
(PAGE  2 
(PAGE  2 
(PAGE  2 


346) 
354) 
364) 
373) 

(PAGE  2  116)  AND 
STATUS 

(PAGE  2  125)  AND 
DATA 


(PAGE  2  146)  FOR  ACR  BOARD 


PROGRAM  EXECUTION  BEGINS  AT  (PAGE  1  000) 


COMMAND  PROCESSING 

MEMORY  PAGE 

1 

000-061  377  037 

INC:  LXI  SP  ; 

LOAD  STACK  POINTER 

003-315  302  377 

STA:CALL  CLC  ; 

PRINT  CR/LF  AND  : 

006-315  345  377 

CALL  RCV  ; 

INPUT  KEYBOARD  DATA 

011-376  105 

CPI  "E"  : 

COMPARE  FOR  ASCII  "E" 

013-312  050  376 

JZ  EXA 

JUMP  TO  EXAMINE  ROUTINE  IF  "E," 

016-376  1  1  1 

CPI  "I"  ; 

COMPARE  ASCII  "I" 

020-312  202  376 

JZ  TIP  : 

JUMP  TO  TAPE  INPUT  IF  "I" 

023-376  117 

CPI  "0"  ; 

COMPARE  FOR  ASCII  "0" 

025-312  246  376 

JZ  TOD  ; 

JUMP  TO  TAPE  OUTPUT  IF  "0" 

030-376  '102 

CPI"B" 

COMPARE  FOR  ASCII  "B" 

032-312  345  376 

JZ  BSL 

JUMP  TO  BOOT  LOADER  IF  "B" 

035-000 

NOP 

GROUP  OF  THREE  NO  OPS  TO 

036-000 

NOP 

ALLOW  EXPANSION  OF 

037-000 

NOP 

COMMAND  TABLE 

040-076  077 

DEF:  MVI  A.  "?"  ; 

MOVE  ASCII"?"  TO  A 

042-315  362  377 

CALL  PNT  ; 

CALL  PRINT  SUBROUTINE 

045-303  003  376 

JMP  STA 

JUMP  BACK  TO  START 

EXAMINE 

050-315  315  377 

EXA:  CALL  CL>            ;PRINT  CR/LF  AND> 

053-315  150  377 

CALL  LHK            ;LOAD  H  AND  L  FROM  OCTAL  INPUT 

FROM  KEYBOARD 

056-315  330  377 

PXA:CALL  CRL 

PRINT  CR/LF 

061-315  166  377 

CALL  POH 

PRINT  OCTAL  ADDRESS  AND  DATA 

064-076  072 

MVI  A.  ":" 

MOVE  ASCII  ":"  TO  A 

066-315  362  377 

CALL  PNT 

CALL  PRINT  SUBROUTINE 

071-315  345  377 

CALL  RCV 

INPUT  DATA  FROM  KEYBOARD 

074-376  040 

CPI  "  " 

COMPARE  ASCII  "SPACE" 

076-312  123  376 

JZ  EXN 

JUMP  TO  EXAMINE  NEXT  IF 

"SPACE- 

101-376  122 

CPI  "R" 

COMPARE  ASCII  "R" 

103-312  127  376 

JZ  RUN 

JUMP  TO  RUN  IF  "R" 

106-376  104 

CPI  "D" 

COMPARE  ASCII  "D" 

1 10-312  130  376 

JZ  DEP 

JUMP  TO  DEPOSIT  IF  "D" 

113-376  114 

CPI  "L" 

COMPARE  ASCII  "L" 

115-312  152  376 

JZ  LDE 

JUMP  TO  LOAD  IF  "L" 

120-303  040  376 

JMP  DEF 

JUMP  TO  DEFAULT  ROUTINE 

123-  043 

124-  303  056  376 


EXAMINE  NEXT 

EXN:  INXH  INCREMENT  H  AND  L 

JMP  PXA  ;JUMP  TO  PRINT  OCTAL  ADDRESS 

AND  DATA 


FEBRUARY  1977 


INTERFACE  AGE  13 


Boards  DO  Something 


Mir  ■ ; 
*  M  t 


9-  9  i 
i'  t  r  i  i 


CL2400 

Real  Time  Clock 


$98— Kit 


$135— Assembled 


If  your  system  needs  to  know  what  time  it  is,  our  CL2400  is 
the  board  for  you.  The  present  time  in  hours,  minutes,  and 
seconds  is  always  available  for  input,  and  is  continuously 
updated  by  the  highly  accurate  60  Hz  power  line  frequency. 
Need  periodic  interrupts?  The  CL.2400  can  do  that,  too,  at  any 
of  6  rates.  Reference  manual  with  BASIC  and  assembly 
language  software  examples  included. 


m/  O 


PC3200 

Power  Control  System 


PC3232  $299— Kit 
PC3216  $189— Kit 
PC3202  $39.50— Kit 


$360— Assm. 
$240— Assm. 
$52— Assm. 


If  your  system  needs  on/off  control  of  lights,  motors, 
appliances,  etc.,  our  PC3200  System  components  are  for 
you.  Control  boards'allow  one  I/O  port  to  control  32  (PC3232) 
or  16  (PC3216)  external  Power  Control  Units,  such  as  the 
PC3202  which  controls  120  VAC  loads  to  400  Watts.  Optically 
isolated,  low  voltage,  current-limited  control  lines  are 
standard  in  this  growing  product  line. 


P.O.  Box  516 
La  Canada,  CA  91011 
(213)  790-7957 


"Real  World  Electronics" 


CI  CLE  INQUIRY  NO.  3 


Confused  About 
Printers? 


MPI  HAS  YOU 


WER! 


TTY  REPLACEMENT?    THESSP-HD 

The  SSP'40  contains  its  own  microprocessor  for  easy  connection 
to  yoLir  serial  port, ' 

LOW  COST  BUSINESS  SYSTEM?   THEMP-40  *425 

The  MP-  40  connects  to  your  pa  relief  port  tor  ASC1 T  data  transfer 

MINIMUM  COST  FOR  HOBBYIST?  .  ,  THE  KP-40KIT  '170 

The  KP-40  KIT  contains  mechanism  and  minimum  electionics  for 
connection  to  your  parallel  port, 

All  of  our  40  series  printers  use  I  ho  same  reliable  5x7  impact  dot  matrix  mechanism  with 
up  to  40  columns  per  fine  on  ordinary  paper  with  a  print  speed  of  75  lines/minute. 

WASTER  CHARGE  WELCOME  *  UTAH  RESIDENTS  ADD  5^  SALES  TAX 
■      SEND  FOR  FREE  LITERATURE 


mpi 


MICROPROCESSOR  SYSTEMS  AND  PERIPHERALS 
P.O.  BOX  22101 /SALT  LAKE  CITY/UT.  84122 
(8011566  0201 


CIRCLE  INQUIRY  NO.  16 


RUN 

127-351 

RUN:PCHL 

.START  EXECUTION  AT  ADDRESS 

REFERENCED  BY  H  AND  L 

124-303  056  376 

JMP  PXA 

.  JUMP  TO  PR/NT  OCTAL  ADDRESS 

AND  DATA 

RUN 

127  351 

RUN:PCHL 

;START  EXECUTION  AT  ADDRESS 

REFERENCED  BY  H  AND  L 

DEPOSIT 

130-315  272  377 

DEP:CALL  SPC 

:CALL  PRINT  SPACE  SUBROUTINE 

133-315  054  377 

CALL  OCI 

:CALL  OCTAL  DATA  IN  FROM 

KEYBOARD 

136-167 

MOV  M,A 

:STORE  DATA  IN  MEMORY 

137-315  272  377 

CALL  SPC 

;PRINT  SPACE 

142-176 

MOV  A.M 

:MOVE  DATA  FROM  MEMORY  TO  A 

143-315  231  377 

CALL  POC 

:PRINT  OCTAL  EQUIVALENT  OF 

DATA 

1 46-043 

INX  H 

INCREMENT  H  AND  L 

147-303  056  376 

JMP  PXA 

JUMP  TO  PRINT  OCTAL  ADDRESS 

AND  DATA 

LOAD 

152-315  330  377 

LDE:  CALL  CRL 

:PRINT  CARRIAGE  RETURN/LINE 

FEED 

155-315  166  377 

CALL  POH 

;PRINT  OCTAL  EQUIVALENT  OF 

ADDRESS  AND  DATA 

160-315  272  377 

CALL  SPC 

;PRINT  ASCII  "SPACE" 

163-315  054  377 

CALL  OCI 

:LOAD  OCTAL  DATA  FROM 

KEYBOARD 

166-167 

MOV  M.  A 

;MOVE  DATA  TO  MEMORY 

167-315  272  377 

CALL  SPC 

;PRINT  ASCII  "SPACE" 

172-176 

MOV  A.  M 

;MOVE  DATA  FROM  MEMORY 

173-315  231  377 

CALL  POC 

:PRINT  OCTAL  EQUIVALENT  OF 

DATA 

176-043 

INX  H 

INCREMENT  H  AND  L 

1  77-303  1  52  376 

JMP  LDE 

;JUMP  FOR  NEXT  BYTE 

TAPE 

IN 

202-315  315  377 

TIP:  CALL  CL> 

;PRINT  CR/LF  AND> 

205-315  150  377 

CALL  LHK 

;LOAD  H  AND  L  FROM  KEYBOARD 

210-315  302  377 

CALL  CLC 

;PRINT  CR/LF  AND: 

213-315  345  377 

CALL  RCV 

;WAIT  FOR  A  KEY  ON  KEYBOARD  TO 

BE  DEPRESSED 

216-315  127  377 

TSC:CALL  TIN 

;INPUT  DATA  FROM  ACR  BOARD 

221-376  002 

CPI  "2" 

;CHECK  FOR  STX  (002) 

223-302  216  376 

JNZ  TSC 

JUMP  IF  DATA  IS  NOT  STX 

226-315  127  377 

TSD:CALL  TIN 

;INPUT  DATA  FROM  ACR  BOARD 

231-376  002 

CPI 

;CHECK  FOR  STX  (002) 

233-302  226  376 

JNZ  TSD 

:JUMP  IF  DATA  IS  NOT  STX 

236-315  127  377 

TSN;  CALL  TIN 

;INPUT  DATA  FROM  ACR  BOARD 

241-167 

MOV  M.  A 

;STORE  DATA 

242-043 

INX  H.  L 

INCREMENT  H  AND  L 

243-303  236  376 

JMP  TSN 

:JUMP  FOR  NEXT  BYTE 

TAPE  OUT 

246-315  315  377 

TOD:CALL  CL> 

;PRINT  CR/LF  AND> 

251-315  150  377 

CALL  LHK 

;LOAD  H  AND  L  FROM  KEYBOARD 

254-315  272  377 

CALL  SPC 

;PRINT  SPACE 

257-076  124 

MVIA,  "T" 

;MOVE  ASCII  T  TO  ACCUMULATOR 

261-315  362  377 

CALL  PNT 

:PRINT  T 

264-076  117 

MVI  A.  "0" 

;MOVE  ASCII  0  TO  ACCUMULATOR 

266-315  362  377 

CALL  PNT 

;PRINT  0 

271-315  272  377 

CALL  SPC 

;PRINT  A  SPACE 

274-345 

PUSH  H 

;PUSH  H  AND  L 

275-315  150  377 

CALL  LHK 

;LOAD  H  AND  L  FROM  KEYBOARD 

300-124 

MOV  D.  H 

;MOVE  H  TO  D 

301-135 

MOV  E.  L 

:MOVE  L  TO  E 

302-341 

POP  H 

;POP  H  AND  L 

303-315  330  377 

CALL  CRL 

;PRINT  CR/LF 

306-076  002 

MVI  A,  "2" 

;MOVE  STX  "002"  TO 

ACCUMULATOR 

310-315113  377 

CALL  TOT 

;RECORD  STX  ON  TAPE 

313-076  002 

MVI  A,  "2" 

;MOVE  STX  "002"  TO 

ACCUMULATOR 

315-315  113  377 

CALL  TOT 

;RECORD  STX  ON  TAPE 

320-176 

TOE:MOV  A.  M 

;MOVE  DATA  FROM  MEMORY  TO 

ACCUMULATOR 

321-315  113  377 

CALL  TOT 

;RECORD  DATA  ON  TAPE 

324-174 

MOV  A,  H 

;MOVE  H  TO  A 

325-272 

CMP  D 

;COMPARE  D  WITH  H 

326-302  341  376 

JNZ  TON 

JUMP  IF  D  NOT  =  H 

331-175 

M.PV  A.  L 

;MOVE  L  TO  A 

332-273 

CMP  E 

:COMPARE  E  WITH  L 

333-302  341  376 

JNZ  TON 

JUMP  IF  E  NOT  =  L 

336-303  003  376 

JMP  STA 

JUMP  BACK  TO  MONITOR  SINCE 

ENTIRE  BLOCK  HAS  BEEN 

RECORDED 

341  043 

TON:INX  H 

INCREMENT  H  AND  L 

342-303  320  376 

JMP  TOE 

JUMP  FOR  NEXT  BYTE 

MITS  BOOTSTRAP 

345-021  000  000 

BSL;  LXI  D.  "0,  0" 

:LOAD  D  AND  E  WITH  000  000 

350-041  016  377 

LXI  H.  "377  016 

";LOAD  H  AND  L  WITH  376  016 

353-176 

MOV  A.  M 

:MOVE  M  TO  A 

354-353 

BSN:XCHG 

EXCHANGE  H  AND  L  WITH  D  AND  E 

355-167 

MOV  M.  A 

.STORE  DATA 

356-353 

XCHG 

EXCHANGE  H  AND  L  WITH  D  AND  E 

357-175 

MOV  A.  L 

;MOVE  L  TO  A 

360-376  055 

CPI-055" 

;CHECK  FOR  END 

362-312  372  376 

JZ  END 

JUMP  IF  END 

365-043 

INX  H 

JNCREMENT  H  AND  L 

366-023 

INX  D 

INCREMENT  D  AND  E 

*3fi"7  *3m    OCO  -37C 

JMP  BSN 

JUMP  FOR  NEXT  BYTE 

OTn    oic   Tyic;  T7"7 

J / ^-o 10  o// 

END:CALL  RCV 

:WAIT  FOR  KEY  ON  KEYBOARD  TO 

BE  DEPRESSED 

375-303  024  000 

JMP  "000  024" 

JUMP  TO  000  024  WHICH  IS  START 

OF  BOOTSTRAP  LOADER 

PROGRAM 

000-333  000 

rNP:  INO 

;INPUT  KEYBOARD  STATUS 

002-017 

RRC 

;ROTATE  RIGHT 

003-332  000  377 

JCINP 

JUMP  BACK  IF  NO  DATA 

AVAILABLE 

006-333  001 

IN  1 

JNPUT  KEYBOARD  DATA 

010-000 

NOP 

:N0  OPERATION 

01  1-000 

NOP 

;N0  OPERATION 

012-000 

NOP 

:N0  OPERATION 

013-303  362  377 

JMP  PNT 

JUMP  TO  PRINT  SUBROUTINE 

016-041  256  037 

BSP  LXI  H 

;LOAD  H  AND  L  WITH  (037  256) 

021-061  022  000 

LXI  SP 

:LOAD  STACK  POINTER  WITH  (000 

022) 

024-333  006 

IN  6 

:INPUT  ACR  STATUS 

026-017 

RRC 

; ROTATE  RIGHT 

027-330 

RC 

:RETURN  IF  CARRY 

030  333  007 

IN  7 

;INPUT  ACR  DATA 

032-275 

CMP  L 

;COMPARE  L 

033-310 

RZ 

:RETURN  IF  ZERO 

034-055 

OCR  L 

DECREMENT  L 

035-167 

MOV  M.  A 

:MOVE  DATA  TO  MEMORY 

036-300 

RNZ 

:RETURN  IF  NOT  ZERO 

037-351 

PCH  L 

EXCHANGE  PC  WITH  H  AND  L 

040-003 

INX  B 

JNCREMENT  B  AND  C 

041-000 

NOP 

;N0  OPERATION 

042-333  007 

IN  7 

;INPUT  ACR  DATA 

044  376  256 

CPI  256 

;COMPARE  FOR  CHARACTER 

MARKING  256 

046-302  024  000 

JNZ  (000  024) 

JUMP  BACK  IF  DATA  IS  NOT  256 

051-303  000  000 

JMP  (000  000) 

JUMP  TO  START  OF  BOOTSTRAP 

054-305 

OCI:  PUSH  B 

:PUSH  B 

055-006  000 

MVI  B 

;MOVE  000  TO  B 

057-315  345  377 

CALL  RCV 

;CALL  KEYBOARD  DATA  INPUT 

062-346  003 

AM  "3" 

:AND  IMMEDIATE  (MASK  2  LSB'S) 

14  INTERFACE  AGE 


FEBRUARY  1977 


Now  you  can  buy  an 
AltairM8800b  or  an  Altair 
680b  computer  right  off 
the  shelf.  Altair  plug-in 
boards,  peripherals, 
software  and  manuals 
are  also  available. 
Check  the  list  below 
for  the  MITS 
dealer  in  your  area. 


off  the  shelf. 


RETAIL  COMPUTER  STORE.  INC. 
Tim  &  Susanne  Broom 
410  NE  72nd  St. 
SEATTLE,  WA  98115 
(206)  524-4101 

COMPUTER  KITS  (S.  F.  area) 
Pete  Roberts 
1044  University  Ave. 
BERKELEY,  CA  94710 
(415)  845-5300 

THE  COMPUTER  STORE 

(Arrowhead  Computer  Co.) 

Dick  Heiser 

820  Broadway 

SANTA  MONICA,  CA  90401 

(213)  451-0713 

GATEWAY  ELECTRONICS,  INC. 
George  Mensik  OF  COLORADO 

2839W.44th  Ave. 
DENVER.  CO  80211 
(303)  458-5444 

COMPUTER  SHACK 
Pete  Conner 
3120  San  Mateo  NE 
ALBUQUERQUE,  NM  87110 
(505)883-8282,  883-8283 


GLOBAL  ENGINEERING  CO. 
5416  South  Yale 
TULSA,  OKLA.  74145 
(918)452-2567 

COMPUTER  PRODUCTS  UNLIMITED 

Harry  &  Margaret  Mohrmann 

4216  West  12th 

LITTLE  ROCK.  AR  72204 

(501)  666-2839 

GATEWAY  ELECTRONICS,  INC. 
Harry  &  Margaret  Mohrmann 
Lou  Elkins,  Stuart  Bartfield 
8123-25  Page  Blvd. 
ST.  LOUIS,  MO  63130 
(314)  427-6116 

CHICAGO  COMPUTER  STORE 

Lou  Van  Eperen 

517  Talcott  Rd. 

PARK  RIDGE,  IL  60068 

(312)823-2388 

THE  COMPUTER  ROOM 
3938  Beau  D'Rue  Drive 
Eagan.  MN  55122 
Dale  Hagert.  Bob  Raemer 
(612)  452-2567 


BYTETRONICS 
John  &  Stan  Morrow 
Suite  103 
1600  Hayes  St. 
NASHVILLE,  TN  37203 
(615)329-1979 

THE  COMPUTER  SYSTEMCENTER 
Jim  Dunion,  Rich  Stafford, 
Steven  Mann,  Ron  Roberts 
3330  Piedmont  Road 
ATLANTA.  GA  30305 
(404)  231-1691 

THE  COMPUTER  STORE.  INC. 
Sid  Halligan 
120  Cambridge  St. 
BURLINGTON,  MA  01803 
(617)  272-8770 
Jeff  Feldman,  Service  Dept. 


THE  COMPUTER  STORE,  INC.  (Hartford  area) 
George  &  Susan  Gilpatnck 
63  South  Main  Street 
WINDSOR  LOCKS,  CT  06096 
(203)  627-0188 

MICROSYSTEMS  (Washington.  D.C.) 
Gloria  &  Russell  Banks 
6605ABacklick  Rd. 
SPRINGFIELD,  VA  22150 
(703)  569-1110 

THE  COMPUTER  STORE 
Stephen  Payne 

1114  Charleston  National  Plaza 
CHARLESTON,  W.  VA.  25301 
(304)  343-4607 


THE  COMPUTER  STORE  OF  NEW  YORK 

Bob  Arning 

55  West  39th  St. 

NEW  YORK,  NEW  YORK  10018 

(212)  221-1404 

THE  COMPUTER  STORE  OF 
Peter  Blond  ANN  ARBOR 

310  East  Washington  Street 
ANN  ARBOR.  Ml  48104 
(313)  995-7616 


MARSH  DATA  SYSTEMS 
Don  Marsh 

5405  B  Southern  Comfort  Blvd. 
TAMPA.  FL  33614 
(813)  886-9890 


0^  DOQIju^ 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  15 


INTERFACE  AGE  15 


No  system  is  more  complete.  None  is  less  expen- 
sive. OSI  system  boards  and  full  documentation 
start  at  $29.  Fully  assembled  systems  at  $439. 
And  OSI  offers  more  features  than  ever.  Full 
multiprocessing  capabilities.  An  innovative  full 
color  graphics  and  alphanumeric  video  system. 
New  options  for  even  greater  system  expansion. 
New  software.  And  two  of  the  best-priced  floppy 
disk  options  you'll  ever  see.  Now  at  your  compu- 
ter store  or  write  OSI. 


□  Send  me  the  free 
brochure  on  OSI  kits 
and  fully  assembled 
computers. 


□  Send  me  the  full 
line  OSI  catalog, 
$1.00  is  enclosed. 


Ohio  Scientific  Instruments 

11 679  Hayden  Street  Hiram,  Ohio  44234  (216)  569-7945 


CIRCLE  INQUIRY  NO.  19 


1702A  MANUAL  EPROM  PROGRAMMER 

Features  hex  keypad,  two 
digit  hex  address  and  two 
digit  hex  data  display.  Con- 
trols include  load,  clear,  go! 
(step),  key/copy,  data  in/ 
data  out,  and  counter  up/ 
down.  Profile  card  includes 
high  voltage  pulse  regulator, 
timing,  8  bit  address  and  8 
bit  data  drivers/receivers.  Two  6V2"  x  9"  stacked  cards  with 
spacers.  Allows  programming  in  20  minutes  —  copying  in 
5  minutes.  Requires  +5,  —9,  and  +80  volts. 

ASSEMBLED   $299.95 

KIT  $189.95 

NOW 

The  best  of  two  worlds  . . .  use  our  1 702  EPROM  programmer 
as  a  manual  data/address  entry  programmer  ...  or  connect  it 
to  your  processor. 

IMSAI/ALTAIR  computer  interface  (requires  3  output  ports, 

+1  input  port)  and  software   $49.95 

Briefcase  unit  with  power  supplies  and  interface  connectors 
(assembled  and  tested  only)   $599.95 

ANNOUNCING 

Our  NEW  16K  Byte  Pseudo-Static,  IMSAI/ALTAIR  compat- 
ible RAM.  Single  card  slot.  Uses  less  power  than  equivalent 
low  power  RAM.  All  memory  chips  socketed.  Uses  all  prime, 
factory  fresh  ICs.  High  quality,  two-sided,  through-hole- 
plated  circuit  board.  Crystal  controlled,  totally  invisible 
refresh  system  requires  NO  software  management.  Just  plug 
it  in  and  use  like  STATIC  memory. 

Complete  kit  $349.95 

Assembled,  tested,  and  burned  in   $549.95 

ASSOCIATED  ELECTRONICS 

12444  Lambert  Circle   •   Garden  Grove,  CA  92641 
(714)  539-0735 


064-037 

RAR 

;ROTATE  RIGHT 

065-037 

RAR 

;THREE  TIMES 

066-037 

RAR 

067-200 

ADO  B 

;ADD  B 

070-107 

MOV  B.A 

;MOVE  A  TO  B 

071-315  345  377 

CALL  RCV 

;CALL  KEYBOARD  DATA  INPUT 

074-346  007 

ANI"7" 

;AND  IMMEDIATE  (MASK  3  LSB'S) 

076-007 

RLC 

;ROTATE  LEFT  THROUGH 

077-007 

RLC 

:CARRY  THREE 

100-007 

RLC 

;TIMES 

101-200 

ADD  B 

;ADD  B 

102-107 

MOV  B.A 

;MOVE  A  TO  B 

103-315  345  377 

CALL  RCV 

;CALL  KEYBOARD  DATA  INPUT 

106-346  007 

ANI  "7" 

:AND  IMMEDIATE  (MASK  3  LSB'S) 

1  10-200 

AOO  B 

;ADD  B 

1  11-301 

POP  B 

:POP  B  AND  C  REGISTERS 

112-311 

RET 

;UNCONDITIONAL  RETURN 

113-365 

TOT:  PUSH  PSW 

;PUSH  ACCUMULATOR 

114-067 

STC 

;SET  CARRY 

115-333  006 

TOI:  IN  6 

:INPUT  ACR  BOARD  STATUS 

1  1  7-007 

RLC 

jROTATE  LEFT  THROUGH  CARRY 

120-332  115  377 

JC  TOI 

:JUMP  IF  VART  BUFFER  FULL 

123-361 

POP  PSW 

:POP  ACCUMULATOR 

124-323  007 

OUT  7 

;OUTPUT  DATA  TO  ACR  BOARD 

126-311 

RET 

UNCONDITIONAL  RETURN 

127-333  001 

TIN:  IN  1 

;INPUT  KEYBOARD  DATA 

131-376  015 

CPI  "CR" 

;COMPARE  FOR  ASCII  CARRIAGE 

RETURN 

133-312  003  376 

JZ  STA 

JUMP  IF  ASCII  CARRIAGE  RETURN 

136-067 

STC 

;SET  CARRY  BIT 

137-333  006 

IN  6 

;INPUT  ACR  BOARD  STATUS 

141-017 

RRC 

: ROTATE  RIGHT  THROUGH  CARRY 

142-332  127  377 

JC  TIN 

JUMP  IF  NO  DATA  AVAILABLE 

145-333  007 

IN  7 

;INPUT  ACR  BOARD  DATA 

147-311 

RET 

UNCONDITIONAL  RETURN 

150-365 

LHK:PUSH  PSW 

;PUSH  ACCUMULATOR 

151-315  054  377 

CALL  OCI 

;CALL  OCTAL  IN 

154-147 

MOV  H.A 

;MOVE  ACCUMULATOR  TO  H 

155-315  272  377 

CALL  SPC 

;PRINT  A  SPACE 

160-315  054  377 

CALL  OCI 

;CALL  OCTAL  INPUT 

163-157 

MOV  LA 

;MOVE  ACCUMULATOR  TO  L 

164-361 

POP  PSW 

;POP  ACCUMULATOR 

165-311 

RET 

UNCONDITIONAL  RETURN 

166-365 

POHrPUSH  PSW 

;PUSH  ACCUMULATOR 

167-315  204  377 

CALL  POA 

;PRINT  OCTAL  EQUIVALENT  OF 

ADDRESS 

172-076  072 

MVIA. 

;MOVE  ASCII  :  TO  ACCUMULATOR 

174-315  362  377 

CALL  PNT 

;PRINT  : 

177-315  222  377 

CALL  POD 

;PRINT  OCTAL  EQUIVALENT  OF 

DATA 

202-361 

POP  PSW 

;POP  ACCUMULATOR 

203-311 

RET 

UNCONDITIONAL  RETURN 

204-365 

POA;PUSH  PSW 

;PUSH  ACCUMULATOR 

205-174 

MOV  A.H 

;MOVE  H  REGISTER  TO 

ACCUMULATOR 

206-315  231  377 

CALL  POC 

;PRINT  OCTAL  EQUIVALENT  OF  H 

REGISTER 

211-315  272  377 

CALL  SPC 

;PRINT  A  SPACE 

214-175 

MOV  A.  L 

;MOVE  L  REGISTER  TO 

ACCUMULATOR 

215-315  231  377 

CALL  POC 

;PRINT  OCTAL  EQUIVALENT  OF  L 

REGISTER 

220-361 

POP  PSW 

;POP  ACCUMULATOR 

221-311 

RET 

UNCONDITIONAL  RETURN 

222-365 

POD:PUSH  PSW 

;PUSH  ACCUMULATOR 

223-176 

MOV  A.M 

;MOVE  MEMORY  DATA  TO 

ACCUMULATOR 

224-315  231  377 

CALL  POC 

;PRINT  ACCUMULATOR  OCTAL 

EQUIVALENT 

227-361 

POP  PSW 

;POP  ACCUMULATOR 

230-311 

RET 

UNCONDITIONAL  RETURN 

231-345 

POC:PUSH  H 

;PUSH  H  AND  L  REGISTERS 

232-157 

MOV  LA 

;MOVE  ACCUMULATOR  TO  L 

233-007 

RLC 

;ROTATE  LEFT  TWICE 

234-007 

RLC 

235-346  003 

ANI  "3" 

;MASK  OFF  ALL  BUT  3  BITS 

237-366  260 

ORI  260 

:FORM  ASCII  DIGIT 

241-315  362  377 

CALL  PNT 

;PRINT  FIRST  OCTAL  DIGIT 

244-175 

MOV  A.L 

;MOVE  L  TO  ACCUMULATOR 

245-017 

RRC 

;ROTATE  RIGHT  3  TIMES 

246-017 

RRC 

247-017 

RRC 

250-346  007 

ANI  "7" 

;MASK  OFF  ALL  BUT  3  BITS 

252-366  260 

ORI  260 

;FORM  ASCII  DIGIT 

254-315  362  377 

CALL  PNT 

;PRINT  SECOND  OCTAL  DIGIT 

257-175 

MOV  A.  L 

;MOVE  L  TO  ACCUMULATOR 

260-346  007 

ANI"7" 

;MASK  OFF  ALL  BUT  3  BITS 

262-366  260 

ORI  260 

:FORM  ASCII  DIGIT 

264-315  362  377 

CALL  PNT 

:PRINT  THIRD  OCTAL  DIGIT 

267-175 

MOV  A,L 

;MOVE  L  TO  ACCUMULATOR 

270-341 

POP  H 

;POP  H  AND  L  REGISTERS 

271-311 

RET 

UNCONDITIONAL  RETURN 

272-365 

SPC:  PUSH  PSW 

;PUSH  ACCUMULATOR 

273-076  040 

MVI  A  "  " 

;MOVE  ASCII  SPACE  TO 

ACCUMULATOR 

275-315  362  377 

CALL  PNT 

;PRINT  SPACE 

300-361 

POP  PSW 

;POP  PSW 

301-311 

RET 

UNCONDITIONAL  RETURN 

302-365 

CLC:  PUSH  PSW 

;PUSH  ACCUMULATOR 

303-315  330  377 

CALL  CRL 

;PRINT  CARRIAGE  RETURN  AND 

LINE  FEED 

306-076  072 

MVIA.  -•" 

;MOVE  ASCII  :  TO  ACCUMULATOR 

310-315  362  377 

CALL  PNT 

;PRINT  : 

313-361 

POP  PSW 

;POP  ACCUMULATOR 

314-311 

RET 

UNCONDITIONAL  RETURN 

315-365 

CL>:PUSH  PSW 

:PUSH  ACCUMULATOR 

316-315  330  377 

CALL  CRL 

:PRINT  CARRIAGE  RETURN  AND 

LINE  FEED 

321-076  076 

MVIA.  •>" 

;MOVE  ASCII>  TO  ACCUMULATOR 

323-315  362  377 

CALL  PNT 

;PRINT 

326-361 

POP  PSW 

:POP  ACCUMULATOR 

327-311 

RET 

UNCONDITIONAL  RETURN 

330-365 

CRL:  PUSH  PSW 

;PUSH  ACCUMULATOR 

331-076  015 

MVIA.  "CR" 

;MOVE  ASCII  CARRIAGE  RETURN 

TO  ACCUMULATOR 

333-315  362  377 

CALL  PNT 

;PRINT  CARRIAGE  RETURN 

336-076  012 

MVIA.  "LF" 

;MOVE  ASCII  LINE  FEED  TO  ACCUM 

340-315  362  377 

CALL  PNT 

;PRINT  LINE  FEED 

343-361 

POP  PSW 

;POP  ACCUMULATOR 

344-311 

RET 

UNCONDITIONAL  RETURN 

345-333  000 

RCV:IN  0 

;INPUT  STATUS  CHANNEL 

347-017 

RRC 

;CHECK  LSB 

350-332  345  377 

JC  RCV 

.JUMP  BACK  IF  NO  KEYBOARD 

DATA 

353-333  001 

IN  1 

;INPUT  KEYBOARD  DATA 

355-376  015 

CPI  "CR" 

;COMPARE  FOR  ASCII  CARRIAGE 

RETURN 

357-312  003  376 

JZ  "STA" 

;JUMP  TO  START  IF  CARRIAGE 

RETURN 

362-365 

PNT:  PUSH  PSW 

;PUSH  ACCUMULATOR 

363-333  000 

PNA:IN  0 

;INPUT  STATUS  CHANNEL 

365-007 

RLC 

:CHECK  MSB 

366-332  363  377 

JC  PNA 

:JUMP  BACK  IF  TERMINAL  NOT 

CIRCLE  INQUIRY  NO.  2 


371-  361 

372-  323  001 

374-  000 

375-  000 

376-  000 

377-  311 


POP  PSW 

OUT  1 

NOP 

NOP 

NOP 

RET 


READY 
POP  ACCUMULATOR 
PRINT  ACCUMULATOR  CONTENTS 
;NO-OP'S  TO  ALLOW  CALL  TO 
SPECIAL  I/O  HANDLER 
;ROUTINE 

UNCONDITIONAL  RETURN 


16  INTERFACE  AGE 


FEBRUARY  1977 


.    v." ■■  ■■■ 


S«1  SUaei  Pp-ntur 
Runl  CR'lF  and: 

Inisul  Daw  From 

Keyboard 

DEPOSIT  ROUTINE 


From  Examine  Routine 


(376  130) 
Print  Ascii  Space 
And  input  Octal 
Data  From  Keyboard 


.  To  "Examine 
(376  050) 


— To    Tjuo  I"|ju;  '  ItaiiCmn 
(378  2C2I 


Slom  Dam.  Ptmi  Ascii 
Space  and  Octal  Equivalent 
1  Data  Aciuailv  Stored  Aa  A  Chac* 


Kuylseiardi  Data^ 


,  To  "Tape  Output"  Routine 


To  "MITS  Bootstrap" 
Routine  (376  345) 


1370  0401 


I3T6  H6) 


Jump  Back  to  "Examine"  Routine 
(376  056) 


Figure 


LOAD  ROUTINE 


From  Examine  Routine 


Figure  1. 


(376  152) 
Print  CR/LF.  Octal 
Equivalent  of  Address 
And  Data  And  A  Space 


Input  Octal  Dat  a 
From  Keyboard.  Store 
It  And  Read  It  Back  As 
A  Check 


EXAMINE  ROUTINE 
From  Command  Processing 


Increment  H  and  |_ 
(376  176} 


1376  0&Q> 
Mat  CR'LF  Aim  > 

r 

\M*a  H  ffrtd  I  Ffam 

.1 

4  • 

r 

(376  056) 
Print  CR/LF  And 
Octal  Equivalent 
Of  Address  And  Data 
lnUmn  CL        H  .tncl  L 


1 

Ptmv  And  Irtpai 
Dili  Fram  K*vtH>&rt 

To  Print  Ascii? 
(376  040) 


"Emmins  Uni 


(376 

Increi  and  L 

1 


Begin  Program  Exe 
At  Address  Referenced 
By  H  and  L  (376  127) 


'KwYtowd  DfllO  —  ►  To  "Depos.t"  Routine 

(376  130) 


■  To  "Load"  Routine 
(376  152) 


Figure  2 


NOTE;  Typing  a  carraige  return  instead  of  octal  data  will 
cause  a  return  to  the  command  process  routine. 


TAPE  INPUT  ROUTINE 


Figure 


From  Command  Processing 


(376  2021 
Fnni  CR/LF  and 
Load  H  and  L  Fiom 
Ktytmatd 


Prim  CfiV'LF  and 
Wait  Fur  Kwy  Qn  KeyiWftrd 

id  B II  PJHtftBd 


□«1  Tflpu  Dai  a  Fnjm  ACR 


Gat  Tape  Data  From  ACH  Beard 


Q»I  Jape  Dfl  in  FiQrfl  ACfi 
Buflrd  and  Snwe  It 


□76  242) 
Ineramanl  H  and  L 


NOTE:  After  the  tape  has  been  read  in.  type  a  carriage  return 
to  return  to  the  command  process  routine. 


Figure 


FEBRUARY  1977 


INTERFACE  AGE 


PRAMMER  by  Xybek 

i  mil 


?"  v  i 


■  I  I  I  1  1 
I 


j        *5  ~' 


1  ^ 


*  1702A  PROM  PROGRAMMER,  1792  bytes  of  1702A 
EPROM,  and  256  bytes  of  RAM,  all  on  one  board. 
The  programmer  is  not  an  I/O  device.  At  the  flick 
of  a  switch,  one  of  the  1702A  positions  becomes  a 
programming  address.  With  programming  enabled, 
storing  into  this  address  space  will  program  the  PROM. 
With  programming  disabled,  that  address  space  is  just 
ordinary  read-only  memory. 

*  Because  PRAMMER  contains  its  own  clock  and  micro- 
program for  read-write  control,  it  will,  through  the 
S-100  bus,  interface  with  any  CPU. 

*  The  kit  comes  complete  with  one  1702A  containing 
stand-alone  software  for  programming  other  1702A's 
and  a  complete  source  listing  of  an  eleven-function 
development  system  which  fits  into  the  1792  bytes 
of  PROM  space. 

COMPLETE  KIT:  Introductory  Price  $189 

Master  Charge  and  Ban  kAmericard  accepted. 
California  residents  please  add  sales  tax. 

XYBEK  •  P.O.Box  1631  •  Cupertino,  CA  950 14 

Telephone  (408)  296-8188 


CIRCLE  INQUIRY  NO.  37 


$459 


KIT 

ASSEMBLED  $529 


•  USES  4K  STATIC  RAMS -NO  REFRESH 

•  VERY  LOW  POWER -LESSTHAN1  AMP 

•  Z80  FAST -200ns  ACCESS  TIME 

•  PROVISION  FOR  BATTERY  BACKUP 

•  LOW  PROFILE  SOCKETS  FOR  ALL  CHIPS 

•  EACH  4K  ADDRESSABLE  TO  ANY  4K  SLOT 

•  HARDWARE/SOFTWARE  MEMORY  PROTECT 
FOR  EACH  4K 

•  SPECIAL  PAGING  OPTION  ALLOWS  UP  TO 
1  MEGABYTE  ADDRESSABLE  MEMORY 

•  LOW  COST 

CONSTRUCTION  MANUAL   $1 .75 

PAGING  OPTION   $9.00 

QUANTITY  DISCOUNT  5  BOARDS  —  5% 

10  OR  MORE  —  1 0% 
DEALER  INQUIRIES  INVITED 

OMNI  SYSTEMS  INC. 

P.O.  BOX  7536,  UNIV.  STATION 
PROVO,  UTAH  84602 


CIRCLE  INQUIRY  NO.  21 


16  K  STATIC  RAM 

For  ALTAIR  /  IMS Al  /  POLY  88 


TAPE  OUTPUT  ROUTINE 


From  Command  Processing 


(376  246) 
Print  CR/LF  and  Load 
Start  Address  of  Data  Block 
To  Be  Put  On  Tape 


Print  "Space"  To  "Space" 
And  Load  Stop  Address  Of 
Data  Block  To  Be  Put  On 
Tape 


Prim  CR/LF  And  Record 
Two  STX  (002!  Characters 


(376  320) 
Move  Data  From  Data 
Block  And  Record  On  Tape 


No 


To  "Command  Process"  Routine 
(376  000) 


Figure  6. 


MODIFIED  MITS  BOOTSTRAP 


From  Comm    d  Processing 


(376  345) 
Load  D  and  E  with  (000  000) 
Load  H  and  L  with  (376  016) 


(376  341) 
Increment  H  and  L 


Move  Data  From  Memory  (REF  H,  L) 
Store  Data  in  Memory  (REF  D.  E) 


No 

Increment 

H, 

L 

>  ► 

Increment 

D. 

E 

Wait  For  Key  On 
Keyboard  To  Be 
Depressed 


Jump  To  Start 
Of  Bootstrap  Loader 


(000  024) 

Figure  7. 


18  INTERFACE  AGE 


FEBRUARY  1977 


DIGITAL  DATA  RECORDERS 


MODEL  3M3    $199.95  2SIO(R)  CONTROLLER  $190.00 

(Price  Increases  to  $220.00 
effective  1  April  77) 


MODEL  3M3  Featuring  the  radically  new  "Uniboard"  method  of  con- 
struction for  data  cartridge  drives.  The  major  computer  makers  are 
changing  to  cartridges  at  a  rapid  pace  because  of  the  freedom  from  binding 
and  greater  data  reliability.  Operates  in  the  phase  encoded  self-clocking 
mode  which  provides  greatly  enhanced  freedom  from  speed  variation 
problems  and  allows  100%  tape  interchangeability  between  units. 

Uses  the  3M  Data  Cartridge,  model  DC  300.  This  cartridge  contains  300 
feet  of  .250  tape  in  a  sealed  plastic  container.  Using  four  tracks  you  can 
record  nearly  2  megabytes  of  data  on  a  cartridge. 

Specifications:  Full  software  control  of  record,  play,  fast  forward  and 
rewind.  LED  indicates  inter-record  gaps.  EOT  and  BOT  are  sensed  and 
automatically  shut  down  recorder.  Feedback  signals  send  reset  and  inter- 
record  gap  signals  back  to  the  computer  so  that  software  searching  for 
inter-record  gaps  at  high  speed  can  be  accomplished.  Can  also  be  operated 
manually  by  means  of  the  switches  on  top  which  parallel  the  software  con- 
trol signals.  $199.95  until  April  1,  77.  $220.00  after  April  1,  77.  Includes  Phase 
Encoder  Board  (ACI). 

For  8080,  8085,  and  Z-80  users: 

Comes  complete  with  software  listing  for  the  programs  in  the  2SIO(R) 
ROMs.  Can  be  controlled  by  any  of  the  commpnly  used  I/O  boards.  Send 
for  complete  documentation  and  interfacing  instru  3M3  and  2SIO(R) 
($3.00).  These  programs  provide  full  software  control. 


2SIO(R)  CONTROLLER  (Bootstrap  Eliminator) 

This  is  a  complete  8080,  8085,  or  Z80  system  controller.  It  provides  the  ter- 
minal I/O  (RS232,  20  ma.,  or  TTL)  and  the  data  cartridge  I/O,  plus  the  motor 
controlling  parallel  I/O  latches.  One  kilobyte  of  on  board  ROM  provides 
turn  on  and  go  control  of  your  Altair  or  Imsai.  No  more  bootstrapping. 
Loads  and  Dumps  memory  in  Hex  on  the  terminal,  formats  tape  cartridge 
files,  has  word  processing  and  paper  tape  routines.  Best  of  all,  it  has  the 
search  routines  to  locate  files  and  records  by  means  of  six,  five  and  four 
letter  strings.  Just  type  in  the  file  name  i  i  the  recorder  and  software  do 
the  rest.  Can  be  used  in  the  BiSync  (IBM),  BiPhase  (Phase  Encoded)  or  NRZ 
modes  with  suitable  recorders  and  interfaces. 

$190,  wired  and  tested. 

$160,  Kit  form. 

Audio  Cassette  Interlace  (ACI)  This  is  the  phase  encoding  board  used  in 
the  3M3.  Additional  components  on  the  board  enable  you  to  use  audio 
recorders  in  the  KC  standard  or  the  new  PE  2400  (2400  baud)  systems.  Can 
also  be  used  for  Tarbell  if  you  have  an  8251  Intel  I/O  chip.  Required  if  you 
use  an  audio  cassette  with  the  2SIO(R)  above. 

$55,  wired  and  tested. 

$35,  Kit  form. 

For  6800  Users:  Software  programs  and  I/O  board  for  SWTP  are  under 
development.  Limited  software  available  now.  Ask  for  6800  data  with  $3.00 
Documentation  package.  These  programs  will  provide  full  software  control. 

CARTRIDGE  AVAILABILITY:  Cartridges  are  made  by  3M,  ITC,  Wabash  and 
others.  They  are  available  at  all  computer  supply  houses  and  most  major 
computer  service  centers.  We  can  supply  them  at  normal  current  list  prices. 


"COMPUTER  AID"  and  "UNIBOARD"  are  trademarks  of  the  NATIONAL  MULTIPLEX  CORPORATION.  The  3M  Data  Cartridges  are 
covered  by  3M  Patents  and  Marks.  "UNIBOARD"  Patents  Pending. 

OVERSEAS:  EXPORT  VERSION  —  220  V  ■  I  Hz.  Write  Factory  or:  Megatron,  8011  Putzbrunn,  Munchen,  Germany;  Nippon 
Automation  5-16-7  Shiba,  Mir  ato-Ku,  Tokyo;  Hobby  Data,  FACK  20012  Malmo,  Sweden;  G.  Ashbee,  172  Ifield  Road, 
London  SW  10-9  AG. 

For  U.P.S.  delivery,  add  $3.00.  Overseas  and  air  shipments  charges  collect.  N.J.  Residents  add  5%  Sales  Tax.  WRITE  or  CALL  for  further 
information.  Phone  Orders  on  Master  Charge  and  BankAmericard  accepted. 


NATIONAL  MULTIPLEX  CORPORATION 

3474  Rand  Avenue,  South  Plainfield  N J  07080,  Box  288,  Phone  (201)  561-3600  TWX  710-997-9530 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  17 


INTERFACE  AGE  19 


W\  A  MICROPROCESSOR  COURSE 

1     FOR  ENGINEERS  AND  PROGRAMMERS  \J 

FROM  OSBORNE  &  ASSOCIATES.  INC. 
AUTHORS  OF  THE  "INTRODUCTION  TO  MICROCOMPUTERS"  SERIES  OF  BOOKS 

This  course  teaches  students  how  to  design  products  around  microprocessors. 

This  is  the  principal  difference  between  a  microcomputer  and  a  minicomputer:  a  minicomputer  is  used  as  a  vehicle  for  the  execution  of  various  pro- 
grams; a  microcomputer  is  used  as  a  low  cost  substitute  for  combinatorial  logic. 

A  microcomputer  can  be  used,  like  a  minicomputer,  simply  to  execute  programs;  that  is  how  microcomputers  are  used  by  computer  hobbyists,  Now  the 
microcomputer  user  is  only  interested  in  the  programming  languages,  and  the  microcomputer  is  packaged  as  a  minicomputer-like  system. 

In  sharp  contrast,  a  logic  designer  who  is  using  a  microcomputer  to  replace  combinatorial  logic  must  look  upon  programming  and  digital  logic  as  two  in- 
terdependent aspects  of  microprocessor  utilization. 

Most  microprocessor  courses  being  taught  at  the  present  time  do  not  accurately  stress  the  interdependence  of  hardware  and  software.  The  student 
can  go  through  an  assembly  language  programming  course,  and  the  fact  that  a  microcomputer  assembly  language  has  been  taught  leaves  the  student 
no  closer  to  understanding  how  the  microprocessor  should  be  used.  Unless  assembly  language  is  taught  as  an  alternative  to  implementing  transfer 
functions  which  could  otherwise  be  implemented  using  combinatorial  logic,  students  will  not  understand  how  to  use  microprocessors  in  a  digital  logic 
environment.  The  purpose  of  the  course  being  taught  by  Osborne  &  Associates  is  to  provide  this  direct  comparison  between  hardware  and  program- 
ming. Students  attending  our  course  are  taught  how  to  decide  whether  hardware  or  instructions  within  a  microcomputer  system  should  be  used  in  order 
to  implement  each  step  of  any  product.  Emphasis  is  placed  on  giving  the  student  a  flexible  understanding  of  whether  to  keep  logic  inside  or  outside  the 
microcomputer  system,  how  to  configure  the  microcomputer  system,  and  how  to  write  programs  that  drive  the  configured  microcomputer  system. 

Heavy  emphasis  is  placed  on  classroom  assignments;  students  are  required  to  implement  the  same  function  using  digital  packages,  instruction  se- 
quences within  a  microcomputer  system,  and  combinations  of  the  two. 


f  TIME 

DAY  1 

DAY  2 

DAY  3 

DAY  4 

DAY  5  ""^ 

8:30  -  10:00  a.m. 

SESSION  1 
Single  Signal 
Logic 

SESSION  4 
The  Central 
Processing  Unit 

SESSION  7 
Assembly  Language 
Programming 

SESSION  9 
Subroutines  and 
Interrupts 

SESSION  1 1 
Parallel 
Interfaces 

BREAK 

1    10:30  a.m.  -  12:00 

SESSION  2 
Parallel 
Data  Concepts 

SESSION  5 

Memory 
Organization 

SESSION  8 
Memory 
Addressing  Modes 

SESSION  10 
The  8080A 
CPU 

SESSION  12 
Serial  I/O 

LUNCH 

1:00  -  2:30  p.m. 

SESSION  3 
The  Structure  Of 
A  Microcomputer 

SESSION  6 
Elementar-y  Assembly 
Language  Programming 

HANDOUT  4 

HANDOUT  4 

(Cont'd) 
HANDOUT  5 

HANDOUT  5 
(Cont'd) 

BREAK 

3:00  -  4:30  p.m. 

HANDOUT  1 /HANDOUT  2 

HANDOUT  3 

HANDOUT  4  (Cont'd) 

HANDOUT  5  (Cont'd) 

HANDOUT  5  (Cont'd) 

EVENING 

HANDOUT  1 /HANDOUT  2 
(Cont'd) 

HANDOUT  3  (Cont'd) 

HANDOUT  4  (Cont'd) 

HANDOUT  5  (Cont'd) 

HANDOUT  5  (Cont'd) 

HANDOUT  6  J 

TIME 

DAY  6 

DAY  7 

DAY  8 

DAY  9 

DAY  10 

^8:30  -  10:00  a.m. 

SESSION  13 
Memor-y  Systems 
Configurations 

SESSION  15 
Programming  Aspects 
Of  Interrupts 

SESSION  17 
The  Theoiv  Of  Direct 
Memory  Access 

COMPLETE 
HANDOUTS 

An  Overview  of 
Microcomputer 
Systems 

BREAK 

10:30-  12:00 

SESSION  14 
One-Shots  &  Interval 

Timing:  The  8253 
Programmable  Timer 

SESSION  16 
Interrupt 
Handling 
Devices 

SESSION  18 
The  0257 
Direct  Memory 
Access  Controller 

COMPLETE 
HANDOUTS 

An  Overview  Of 
Microcomputer 

Systems 

(Cont'd) 

LUNCH 

1:00  -  2:30  p.m. 

HANDOUT  6  (Cont'd) 
HANDOUTS  7,  8  &  9 

SESSION  16 
(Cont'd) 

COMPLETE 
HANDOUTS 

COMPLETE 
HANDOUTS 

An  Overview  Of 
Microcomputer  Systems 
(Cont'd) 

BREAK 

3:00  -  4:30  p.m. 

COMPLETE 
HANDOUTS 

COMPLETE 
HANDOUTS 

COMPLETE 
HANDOUTS 

COMPLETE 
HANDOUTS 

An  Overview  Of 
Microcomputer  Systems 
(Cont'd) 

EVENING 

COMPLETE 
HANDOUTS 

COMPLETE 
HANDOUTS 

COMPLETE 
HANDOUTS 

COMPLETE 
HANDOUTS 

J 

Course  fee:     $600  per  student  at  our  facilities  OSBORNE  &  ASSOCIATES,  INC. 

(10  students  per  class)  P.O.  Box  2036 

$6,000  per  class,  plus  expenses,  at  your  facility.  Berkeley,  California  94702  •  (415)  548-2805 


20  INTERFACE  AGE 


CIRCLE  INQUIRY  NO.  18 


FEBRUARY  1977 


LEGION:  An  Experiment  in 

Artificial  Intelligence 


By  Marlin  Ellers 


Most  articles  about  artificial  intelligence  start  out  with  an  introduction  to  the  subject,  a  definition 
of  artificial  intelligence,  and  an  apology  to  the  many  people  in  the  field  who  disagree  with  the 
definition  which  the  author  has  just  put  forth.  One  of  the  main  reasons  for  this  is  that 
although  most  people  agree  upon  the  meaning  of  the  word  "artificial"  very  few  agree  upon  the 
meaning  of  "intelligence",  particularly  when  the  critter  that  is  claiming  to  have  it  is  a  machine.  In  an 
attempt  to  avoid  quarrelsome  definitions  and  hair-splitting  arguments,  and  also  in  order  to  keep  this 
article  from  becoming  tediously  long,  your  author  will  simply  ignore  the  question  of  what  artificial 
intelligence  is  for  the  time  being  and  describe  LEGION  and  allow  the  reader  to  come  to  his  own 
conclusions  and  definitions. 


THE  PROBLEM 

We  would  like  to  build  a  program  that  is  capable  of 
recognizing  characters  which  are  drawn  as  a  dot  ma- 
trix (see  Fig.  1).  Furthermore  we  would  like  the  pro- 
gram to  be  able  to  "learn"  what  a  character  is  by 
showing  it  several  examples  of  a  character  and  telling 
it  what  kind  of  character  it  is. 


Figure  1.  a  5x6  Dot  Matrix  Character  (a  plus  sign) 
LEGION 

LEGION  is  the  name  of  the  program  that  the  author 
wrote  in  a  mixture  of  FORTRAN  and  Assembly  Lan- 
guage in  a  couple  of  days  that  was  an  attempt  to  solve 
the  above  problem.  It  was  not  altogether  successful, 
but  it  did  have  many  interesting  features  and  was  quite 
fun  to  play  with.  Since  LEGION  was  written  quickly 
and  sort  of  kluged  together  a  general  description  is 
given  rather  than  a  listing. 

The  basic  design  decision  was  that  LEGION  would 
be  made  up  of  a  number  of  small  parts,  each  of  which 


was  capable  of  deciding  what  it  thought  a  character 
was,  and  each  of  which  could  be  punished  or  re- 
warded for  coming  to  a  right  or  wrong  decision. 

The  idea  was  that  the  parts  that  arrived  at  correct 
decisions  most  often  would  have  a  stronger  say  in  the 
total  decision  that  LEGION  would  finally  make  when 
asked  about  a  character  and  thus  with  a  little  practice 
LEGION  could  learn  what  a  character  was.  At  this 
point  it  was  decided  that  the  parts  would  be  called 
"citizen"  and  when  LEGION  was  shown  a  character 
each  "citizen"  would  "VOTE"  on  what  kind  of  char- 
acter he  thought  it  was,  and  LEGION  would  simply 
tally  the  votes  and  see  who  the  winner  was.  In  addi- 
tion each  citizen  would  have  a  "bank  account"  which 
was  essentially  a  tally  of  how  often  the  "citizen"  was 
right.  Each  time  that  a  "citizen"  guessed  correctly  a 
dollar  was  credited  to  his  account.  If,  on  the  other  hand 
he  was  wrong  in  his  guess,  he  would  lose  a  dollar  from 
his  account.  When  election  time  came  to  the  com- 
munity LEGION  followed  the  very  democratic  prin- 
ciple of  "one  dollar,"  "one  vote"  thus  weighting  the 
"good"  voters  more  heavily  than  the  "bad"  ones. 

When  LEGION  was  finally  implemented  several  pre- 
viously unspecified  parameters  of  the  problem  were 
chosen  in  such  a  way  as  to  simplify  the  programming 
on  a  1  6-bit  word  machine,  and  to  simplify  the  prob- 
lem of  inputing  characters.  (Recall  that  being  a  learn- 
ing machine  requires  that  a  given  character  may  have 
to  be  shown  to  the  program  several  times  before  it  will 
learn  it.  This  does  not  present  any  problem  to  a  sys- 
tem that  has  a  card  reader,  but  when  all  that  you  have 


FEBRUARY  1977 


INTERFACE  AGE  21 


is  a  teletype  and  each  character  must  be  typed  and 
retyped  into  the  machine  there  is  a  definite  need  to 
keep  the  total  input  needed  to  a  minimum). 

For  example,  it  was  decided  that  a  character  would 
consist  of  a  5  by  6  diode  matrix  so  that  one  character 
would  fit  conveniently  into  two  1  6-bit  words  (with  two 
bits  to  spare).  Also  it  was  decided  that  LEGION  would 
only  be  required  to  decide  between  four  characters;  a 
plus,  a  minus,  a  slash,  and  a  zero. 

A  "citizen"  voted  on  a  particular  character  in  this 
manner:  a  subroutine  "VOTE"  was  called  which 
treated  a  citizen  (which  consisted  of  a  16-bit  number 
called  his  social  security  number  of  I.D.  number)  as  a 
set  of  1  6  switches  that  told  whether  to  perform  or  not 
to  perform  certain  fixed  manipulations  of  the  two 
words  of  character.  For  example,  the  first  bit  of  the  I.D. 
number  tells  whether  or  not  to  rotate  the  two  words  of 
character  by  one  bit,  the  second  tells  whether  or  not  to 
"Exclusive  Or"  the  I.D.  number  in  with'  the  character 
etc.  These  manipulations  were  chosen  at  random  in  an 
attempt  to  insure  that  different  "citizens"  would 
scramble  up  the  character  quite  differently.  When  a 
"citizen"  was  done  scrambling  the  character  it  simply 
threw  out  all  but  the  last  two  bits  which  it  took  as  a 
number  from  one  to  four  and  that  was  that  "citizen's" 
guess  for  that  character.  Note  that  this  method  means 
that  an  individual  "citizen"  is  totally  incapable  of  learn- 
ing anything,  for  given  the  same  character  over  and 
over  again  he  will  always  scramble  it  the  same  way 
and  will  thus  always  make  the  same  guess  as  to  what 
it  is. 

LEGION  is  an  interesting  example  of  a  whole  that  is 
equal  to  more  than  the  sum  of  its  parts,  where  a  so- 


ciety of  inflexible  unlearning  individuals  can  work  to- 
gether to  form  a  flexible  learning  body,  just  like  a  group 
of  politicians  (or  worse  yet,  just  the  opposite). 

It  was  decided  the  LEGION  would  start  out  as  a 
colony  of  1000  people  each  with  an  initial  bank  ac- 
count of  $15.00.  Also  since  any  "citizen"  had  a  one 
out  of  four  chance  of  guessing  right  on  any  one  char- 
acter it  was  decided  that  everyone  would  lose  $1.00 
for  a  bad  guess  and  gain  $3.00  for  a  correct  guess  thus 
keeping  the  total  worth  of  the  society  at  a  steady  level. 
Finally,  in  order  to  introduce  new  blood  into  society,  it 
was  decided  that  anyone  that  lost  all  of  his  money  was 
clearly  not  worthwhile  and  would  be  replaced  with  a 
new  individual  who  would  start  out  with  a  fresh  "bank 
account"  of  $15.00.  (The  inflation  introduced  by  this 
arbitrary  introduction  of  new  money  was  simply  ig- 
nored. After  all,  normal  people  are  forced  to  live  with  it 
so  why  should  LEGION  have  it  any  better?)  It  took 
about  three  days  to  write  and  debug  LEGION  and  he 
was  ready  for  the  big  test,  could  he  learn  ?  ?  ? 

THE  TEST 

LEGION  was  first  shown  the  20  characters  shown 
in  Fig.  2  and  asked  to  sort  them  into  the  four  pre- 
viously described  classes.  He  did  not  do  an  overly 
impressive  job,  getting  90%  wrong  the  first  time 
through.  The  teacher  (the  author)  decided  to  see  if 
LEGION  could  learn  a  single  character.  After  showing  a 
Plus  about  10  times  LEGION  finally  decided  that  the 
picture  was  a  Plus  instead  of  a  zero. (Yea!  a  Victory).  He 
was  then  shown  another  Plus.  After  about  4  showings 
LEGION  decided  that  the  second  character  was  a  Plus 


FOR  REAL  RELIABILITY  « o^«,« 

Get  the  first  really  effective  Selectric®  conversion  kit.  Not  a  mechanical  nightmare  or  a  collection  of  switches  and 
coils,  this  unit  is  designed  around  specially  built  solenoids  and  the  latest  opto-electronics  to  achieve  a  superior 
product.  This  product  gives  you  the  usage  of  the  same  rugged  mechanism  that  has  been  the  industry  standard. 

Item  Description  Price 

SK-1  Selectric  conversion  kit,  with  all  mechanical  118.00 

and  electronic  parts.  Needs  1  amp  at  12  volts 

SK-2  SK-1  with  built-in  power  supply  and  TTL  168.00 

compatibility 

SK-3  SK-2  with  controller  kit  giving  RS232  serial  389.00 

ASCII  data  at  110  or  300  BPS.  A  high  speed 
paper  tape  interface  is  included 

DK-1  Floppy  disk  and  controller  kit,  with  350  KB  795.00 

drive.  For  use  with  SK-3,  or  any  serial 
interface,  up  to  19200  BPS.  Contains  high 
level  DOS,  with  simple  commands  making 
any  terminal  a  smart  one  or  any  serial  CPU  a 
Qpy  disk  system 


1 1  *  » 1 »  1 1 

v  


i  I 


n 


Manuals  from  above  kits  are  offered  for  the  purpose  of  evaluating  the 
kits.  Refunds  for  manuals  apply  on  subsequent  kit  order. 


SK-D1  Selectric  Conversion  Manual 

SK-D2  Selectric  Programming  Manual,  with 
listings  and  timing  data 

DK-D1  Floppy  Disk  Kit  &  DOS  Manual 


6.50 
6.50 

6.50 


All  orders  acknowledged  within  24  hours  with  firm  shipping  date.  A50% 
deposit  is  required  on  COD.  Send  check  or  MO  to: 


f\  SWrp&  Aesociatfc 


Box  26045,  Lakewood,  Colorado  80226 


22  INTERFACE  A(Jt 


UIKL'Lh  IMUUIHY  ftilh  m 


FEBRUARY  1977 


m 


THE  ZEROS 


0  0  0  0  0 


THE  SLASHES 


ffl  ffi 


■  i 


3i  H 


THE  PLUSSES 


§09 


THE  MINUSES 


Figure  2.  The  20  different  characters  that  LEGION 
was  trained  to  recognize. 


instead  of  a  zero.  (Yea!  Another  Victory).  It  was  then 
reshown  the  first  character,  he  guessed  a  zero  (Tsk  tsk 
you  should  remember  longer  than  that).  With  one 
reshowing  however  LEGION  remembered  that  the  first 
one  was  a  Plus  (Yea!  again).  After  a  little  drill  LEGION 
learned  the  Minus,  and  in  the  process  forgot  the 
Pluses.  By  alternating  between  the  three  of  them 
LEGION  eventually  learned  them  all.  After  several 
hours  of  similar  trials,  familiar  to  every  teacher  LEGION 
had  made  considerable  progress  from  an  initial  90% 
wrong  to  75%  right.  However  in  spite  of  this  progress 
the  teacher  was  frustrated  that  it  was  taking  so  long  to 
learn  what  seemed  to  be  such  a  simple  task.  The  deci- 
sion was  that  the  teacher  was  simply  being  too  le- 
nient, "spare  the  rod  and  all  that."  Too  many  indi- 
viduals that  were  not  really  any  good  were  staying 
alive.  After  all,  one  could  stay  alive  with  guessing  no 
better  than  random.  Well  that  was  quickly  cured.  With 
a  fairly  simple  program  change  the  penalty  for  failure 
to  guess  correctly  was  upped  to  $2.00.  The  change 
that  this  brought  over  LEGION  was  simply  amazing. 
Suddenly  LEGION  began  to  pick  things  up  a  little 
quicker  and  in  short  order  was  up  to  a  perfect  score,  all 
20  characters  correctly  identified. 

At  this  point  LEGION'S  brains  were  dismantled  via  a 
core  dump  in  order  to  do  some  statistical  checking  and 
some  curiosity  satisfying;  such  as  who  had  the  big- 
gest bank  account?  Was  there  a  "perfect  citizen,"  i.e. 
one  who  just  happened  to  always  be  right?  How  many 
citizens  were  mediocre  as  compared  to  the  rich  ones, 


i.e.  were  the  rich  an  elite  few  who  controlled  most  of 
society,  or  did  the  masses  do  most  of  the  decision 
making?  The  surprising  thing  was  that  due  to  a  pro- 
gramming bug  there  were  citizens  who  had  negative 
bank  accounts!  This  was  because  under  the  old 
punishment  system  of  up  $3.00  down  $1.00  it  was 
decided  to  throw  out  someone  when  his  bank  account 
hit  zero,  so  a  test  for  zero  was  made.  However  under 
the  new  up  $3.00  down  $2.00  it  was  possible  to  have 
one's  bank  account  go  from  4- $1 .00  to  -$1 .00  in  one 
jump  and  thus  get  around  the  test  for  zero.  This  may 
have  been  partly  responsible  for  the  increased  learn- 
ing ability  after  the  change,  after  all  a  citizen  that  con- 
sistently guesses  wrong  is  just  as  valuable  as  one  that 
is  consistently  right.  The  original  classification  as  to 
"good"  and  "bad"  citizens  was  wrong  and  unfair.  A 
derelict  who  squanders  his  money  performs  valuable 
service  to  his  society,  and  is  cherished  by  the  Creator 
(the  author)  as  much  as  the  model  citizen  who  frugally 
tries  to  vote  correctly  in  every  election!  Quite  a  revela- 
tion that  may  have  far  reaching  consequences  when 
applied  to  a  society  of  actual  persons.  The  old  order 
was  overthrown,  a  new  paradigm  came  into  being,  a 
new  method  of  introducing  new  blood  had  to  be  intro- 
duced. Was  random  death  the  answer?  Is  that  the 
reason  that  all  people  must  die?  As  he  stood  at  that 
moment  LEGION  handled  everything  that  had  been 
thrown  at  him.  Could  he  handle  more?  There  was 
much  interest  in  progressing  further  to  see  just  what 
LEGION'S  limits  were  however  at  this  point  the  powers 


FEBRUARY  1977 


INTERFACE  AGE  23 


Figure  3.  Detail  Flowchart  for  LEGION 


NEXT 
/      PERSON  — 
*\     1  +  TOTAL 
\  POPULATION  i 


INITIAL 
BANKAMT- 
15 


Dimension: 

PERSON  (TOTAL  POP.).  TALLY  (NUM.  OF  CHR) 
BANKAMT  (TOTAL  POP.).  CHAR  TABLE  (NUM.  OF  CHR) 


PERSON  (IM 
BANKAMTHI) 
INITIAL 
BANKAMT 


Do  For  I  -  1  To 
TOTAL  POPULATION 


i 

I 
i 

I 
I 

.J 


REWARO-3 
PUNISHH 


If  you  wish  to  Kill 
Losers  Kill  — 1 
Else  set  Kill  to  0 


^    GUESS  ^ 


This  subroutine  was  written  in  assembly  code 


1 

WORK— 
PICTURE 

( LEGION  .4  ^\ 
OUTPUT  J 


WORK~ 
LOGICAL  COMPLIMENT 
OF  WORK 


WORK— 
WORK  +  PICTURE 
-  PERSON  (I) 


1 

r 

l-INDEX 
of  LARGEST 
TALLY  VALUE 

1 

f 

/          "LEGION  / 
/          SAYS  THE  / 
/      CHARACTER  IS  A"  / 
/    CHARACTER  TABLE  (!)  / 

1 

f 

CZ) 


=  0 


GUESS— 1  + 
MOD  (WORK. 
NUMBER  OF  CHARS.) 


^    RETURN  ^ 


DO  SOME  OTHER 
MANIPULATION 
TO  WORK 


An  alternate  form  of  output  that  isn't  quite 
so  slick  but  lets  you  see  more  of  what  is 
going  on  is  to  simply  output  the  entire 
tally.  With  a  small  number  of  characters 
the  maximum  is  easy  to  spot  and  you  can 
see  how  close  the  election  was. 


MOD  is  a  function  that  gives  the 
remainder  when  WORK  is  divided  by 
NUMBER  OF  CHARACTERS  (a  number 
from  0  to  N.  of  C.  -1)  All  1  to  get  a 
number  from  1  to  N.  of  C. 


24  INTERFACE  AGE 


FEBRUARY  1977 


Continued 


IF  LEARN  THEN 

LEARN— 1 

ELSE 

LEARN  — 0 

Picture  is  a  Bit  string 
Representing  the  character 
Matrix.  For  LEGION  this  is 
a  32  Bit  word. 


LEARN 
OR  TEST 
ONLY  r 


PICTURE 

INPUT 

r 

WHAT  IT  IS 
-INPUT 


WHAT  KIND 
OF  CHARACTER 
IS  THAT  ?" 


Do  for  i  =  1  to 


("legion  3  "\ 
VOTE  El)  J 


GUESS 


PICTURE 
PERSON  (I) 


This  function  subroutine  returns  a  value  GUESS  which  is  the 
persons  guess  as  to  what  the  picture  is.  i.e.  GUESS  is  a 
number  from  1  to  NUMBER  OF  CHARACTERS  to  be  used 
as  an  index  tn  the  CHARACTER  TABLE. 


FEBRUARY  1977 


INTERFACE  AGE  25 


Figure  4.  Overall  Flowchart  for  LEGION 


that  be  stepped  in  and  asked  what  was  going  on  and 
LEGION  just  barely  jumped  out  the  window  in  time  to 
avoid  being  caught. 

It  has  since  that  time,  been  a  busy  year,  with  cus- 
tomers always  wanting  a  new  operating  system  or 
something,  and  LEGION,  good  friend  and  kluge  that  he 
is,  has  never  been  resurrected,  never  been  pushed  to 
his  full  potential. 


Do  For  I  =  1  to 
Total  Population 


CONCLUSIONS 

The  question  still  remains,  "Is  LEGION  intelligent?" 
He  does  have  several  on  the  tell-tale  signs.  For  one 
thing  LEGION  is  flexible  enough  to  learn  something 
new  and  to  unlearn  something  that  has  been  pre- 
viously taught  to  him.  He  also  exhibits  a  feature  that  is 
uncommon  in  most  computer  programs  and  that  is 
redundancy.  It  is  possible  to  erase  great  quantities  of 
the  program  (the  citizenry)  and  although  he  will  lose 
his  memory  he  is  able  to  relearn  everything.  This  last 
feature  is  reminiscent  of  the  experiments  in  brain 
structure  where  the  portion  of  the  brain  that  is  respon- 
sible for  a  particular  action  is  isolated  and  removed  but 
the  impairment  of  function  is  only  temporary,  indicat- 
ing that  the  brain  has  built  in  a  certain  redundancy  of 
function.  But  is  LEGION  really  intelligent?  He  can't  tie 
his  shoes,  can't  write  poetry,  can't  even  weave  a  web 
in  which  to  catch  flies  for  dinner  and  would  surely  re- 
ceive an  impossibly  low  score  in  the  Stanford-Binet 
standard  I.Q.  test.  Under  those  standards  LEGION  is 
not  intelligent;  but  then  neither  are  some  of  my  best 
friends.  The  problem  is  in  the  definition  of  intelligence, 
it  always  has  been.  One  test  that  has  been  put  forth  for 
determining  if  a  machine  possesses  intelligence  is  that 
with  the  machine  in  one  room  and  a  person  in  another 
with  a  teletype  for  communication  between  them,  the 
person  is  unable  to  tell  if  he  is  talking  to  a  machine  or 
to  another  person.  LEGION  would  fail  this  test  as 
would  most  readers  if  the  person  testing  were  only 
able  to  speak  Mandarin  Chinese.  For  these  reasons  the 
author  maintains  that  until  an  acceptable  definition 
comes  along  the  Humpty-Dumpty  criterion  will  be 
used  and  the  word  means  what  I  want  it  to  mean,  no- 
thing more  and  nothing  less  and  under  my  definition 
LEGION  is  intelligent. 


SUGGESTIONS 

It  is  hoped  that  this  article  will  inspire  some  readers 
to  experiment  with  such  learning  programs  on  their 
own.  If  anyone  should  do  so  they  may  wish  to  try  this 
test  of  intelligence  which  was  going  to  be  the  next  one 
for  LEGION  before  he  was  so  rudely  interrupted.  Does 
the  learning  on  one  character  set  enhance  the  learning 
on  a  slightly  larger  character  set?  In  particular  after 
LEGION  has  been  trained  to  recognize  the  first  twenty 
characters  is  he  any  more  likely  to  be  correct  on  a  set 
of  ten  test  characters  than  he  would  be  if  they  had 
been  shown  before  learning  anything?  Does  he  apply 
what  he  has  previously  learned  to  a  new  problem? 
Perhaps  one  of  you  can  answer  that. 


INTERFACE  AGE 


FEBRUARY  1977 


/ 


T^ORV  FROM  THE  FVJ^ 


Z16 


Full  16K  of  memory  on  one  card 
available  in  4K  increments.  Buy  only 
what  you  need  now.  Expansion  later 
is  easy  with  a  board  you  have  already 
tested. 

Utilizes  the  EMM  SEMI  4200  memory 
chip  which  is  organized  as  4K  by  1 
bits.  Provides  maximum  access  time 
of  only  200ns,  Added  to  board  logic 
time,  total  board  access  time  is  below 
250ns.  No  other  memory  board  made 
to  S100  bus  specs  can  match  this. 


COMBINING: 

•  HIGHEST  DENSITY 

•  FASTEST  ACCESS 

•  LOWEST  POWER  USE 

•  HIGHEST  QUALITY 

Each  4K  block  may  be  individually 
addressed  at  any  4K  page  border. 
You  have  the  versatility  of  most  4K 
boards  in  your  16K  package.  Address 
changes  are  very  easily  accomplished 
by  using  a  simple  jumper  scheme. 
Each  4K  block  may  be  individually 
protected  by  a  switch. 

Power  consumption  is  outstandingly 
low!  Only  20Sma  from  the  +8v, 
105m  a  from  the  +16v,  and  24ma  from 
the  -16v,  for  a  FULL  1GK.  Battery 
backup  with  a  simple  jack  connector. 


•  GREATEST  VERSATILITY 

•  S100  BUS  COMPATIBLE 

•  LOWEST  COST  16K  STATIC 
MEMORY  MODULE  AVAIL- 
ABLE 

Fully  solder  masked  arid  silk 
screened  board,  sockets  for  all  IC's. 
Complete  documentation  includes 
source  code  for  comprehensive 
memory  test  program  and  paper  tape 
of  this  program. 

KIT:  4K  -  $169;  8K  -  $295;  12K  -  $435; 
16K  -  $574;  4K  expansion  kits  -  $140. 
16K  assembled  and  tested:  $644. 
Delivery:  Off  the  shelf  to  SO  days. 

*OFF  THE  SHELF 


^TECHNICAL 
m^DESIGN 
IZ^^LABS 


0  your  memory.  Hurry,  use  coupon  below  to  order.  Or  call  (609)  921-0321 


The  Design  Leader  in  fi  Processing 


TECHNICAL  DESIGN  LABS,  INC. 

Research  Park  *  Building  H 

1101  Stale  Rd.  -  Princeton,  N.J.  06540 


Please  send  your  Z16  MEMORY  FROM  THE  FUTURE, 

KIT:    H   4K  -  $169  H  8K  -  $295 

H  16K  -  $574  jgj  4K  Expansion  Kit  -  $140 

Name  '  Sail  ? %M 1 £  MM'ii :->  %  Mr*  el 
City  BflgjlflJ  State 
I  en c lose  fil C heck  SB  Mo nev  Order  -  amount  of  sHHBBfl 


K        -  $435 


I  enclose  Check  Money  Order  - 
Charge  Card  Data  t       Ban  kAm  eri  care 

gtSerid  COD  I  enclose  25%  deposit 


Money  Order   imounl  oi  S $W$S-?k 
Ban  kAm  eri  card  or  ^Master  Charge.  #  |Je 
Signature 

;e  25%  deposit.  £|  Send  your  FREE  CATALOG. 


IllSllBlii 

mmmm 

zip 

TECHNICAL  DESIGN  LABS  inc.  ■  Research  Park  -  Bldg.  H  •  1101  State  Road  ■  Princeton,  N.|.  0854* 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  32 


INTERFACE  AGE  27 


Solder  is  for  sissies. 


Are.  you  still  designing  circuits  the  old  fashioned  way?  Soldering 
and  unsoldering?  Burning  up  valuable  IC's?  If  so,  it's  time  you  made 
a  switch  to  solderless  breadboarding.  E&L  Instruments  offers  a 
complete  line  of  breadboarding  products  from  sockets  to  the  most 
complete  systems  for  professional  use.  Here  are  five  ways  you  can 
go  solderless  .  .  . 


Breadbox  III    SK-10  Socket 


An  economical  approach  to  a 
arge    breadboarding  area. 
Three  SK-10  sockets,  four 
5-way  binding  posts,  two 
BNC  connectors,  six  BP-22 
solderless  breadboarding 
pins.  $72.25 


Op-Amp  Designer  #OA-2K 

Powerful  design  tool  for  linear  work  and 
CMOS  digital  circuitry.  SK-10 
socket.  Heavy  current  capac- 
ities on  all  three  power 
supplies  [+/-  15V  &  +5V 
DC].  Sensitive  null 
detector  and  a  full  func- 
tion generator  with  exter- 
nal frequency  adjustment.  All 
interconnections  are  solderless. 

$120.00 in  kit  form. 


Op-Amp  Designer  #OA-3K 

SK-10    socket.    Plus  and 
minus  variable  supplies 
(1  to  15V).  This 
adjustable  feature 
makes  the  unit 
exceptionally  flexible, 
allowing    it    to    be  more 
useful  for  odd  voltage  require- 
ments. The  fixed  5  volt  supply 
allows  interfacing  with  TTL  circuitry. 

$102.50  in  kit  form. 


This    precision    solderless  bread- 
boarding socket  will  pay  for 
itself   in   one  afternoon.  Inte- 
grated  circuits  and  discrete  com- 
ponents   insert    directly,  without 
adapters.  All  interconnections  are 
made   with    20   to   26   gage  solid 
conductor  wire.  $17.75. 

Digi-Designer  DD-1K 

A  must  for  every  student,  engineer  or 
technician  doing  digital 
circuit  design.  Handles 
both  IC  and  discrete 
components  without 
soldering.  Connec- 
tions to  the  SK-10 
socket  are  made 
using  any  solid  22  gage 
insulated  wire.  The  DD-1K  includes  a 
clock,  power  supply,  logic  lights,  pulsers,  logic 
level  switches  and  much  more.  All  circuitry  is 
now  in  one  circuit  board.  $77.75  in  kit  form. 

All  of  these  products  are  now  available  at  your 
local  computer  store.  Prices  shown  are  suggested 
resale  U.S.A. 


lEJA  E&L  INSTRUMENTS,  INC. 

61  FirstStreet,  Derby,  Conn.  06418 
(203)  735-8774  Telex  No.  96  3536 


Dealer  inquiries 
invited. 


28  INTERFACE  AGE 


CIRCLE  INQUIRY  NO 


FEBRUARY  1977 


FOREWORD 

This  stock  option  program  is  written  in  Processor 
Tech's  5K  BASIC  for  the  8080  Microcomputer  and  re- 
quires 4.2  K  bytes  of  memory  storage  space. 

INTRODUCTION 

If  you  have  an  interest  in  the  stock  market  or  in 
listed  call  options,  here's  a  way  to  use  that  interest  to 
help  pay  for  your  home-brew  system,  buy  some  extra 
memory,  or  answer  the  inevitable  question  —  "What 
are  you  going  to  do  with  your  own  computer?"  The 
program  described  in  this  article  calculates  the  net 
profit  and  rate  of  return  for  a  simultaneous  purchase  of 
stock  and  sale  of  a  call  option,  known  generally  as  a 
hedge  and  specifically  as  covered  writing. 


WHAT  IS  AN  OPTION? 

A  call  option,  or  call,  is  the  right  to  buy  a  number  of 
shares  of  an  underlying  stock  at  a  fixed  price,  called  the 
strike  or  exercise  price,  until  a  fixed  date,  called  the  ex- 
piration date.  Until  recently,  a  buyer  of  calls  had  to  go  to 
a  call  broker  who  would  find  someone  willing  to  offer 
(or  write)  a  call  at  or  near  the  price  desired  by  the  buyer. 
This  method  of  buying  and  writing  calls  was  relatively 
slow,  and  once  a  call  was  purchased,  resale  was  dif- 
ficult because  there  was  no  ready  market  for  them. 

In  April,  1973,  the  Chicago  Board  Options  Ex- 
change (CBOE)  began  auction  trading  of.  calls,  and  a 
whole  new  world  of  investment  strategies  began  with 
it.  The  CBOE's  approach  was  simple.  Each  call  would 
be  in  units  of  100  shares,  the  strike  price  would  be  in 
increments  of  5,  10,  or  20  dollars  per  share 
(depending  oh  the  price  of  the  underlying  stock)  and 
the  expiration  date  would  be  fixed  at  one  of  four 
months  of  the  year  —  January,  April,  July,  and  Oc- 
tober. However,  only  three  expiration  periods  would  be 
traded  at  any  one  time.  In  addition,  a  liquid  after- 
market  would  be  maintained  through  a  system  of  com- 
peting market  makers.  This  meant  that  a  call  could  be 
bought  and  sold  minutes,  hours,  days,  or  weeks  later 
depending  on  the  buyer's  assessment  of  market  condi- 
tions. This  idea  was  so  successful  that  trading  in  call 
options  grew  from  ten  underlying  stocks  on  the  CBOE 
to  nearly  200  underlying  stocks  on  the  CBOE, 
American  Stock  Exchange  (AM  EX),  the  Philadelphia, 
Baltimore  and  Washington  (PHLX),  the  Pacific  Coast 
Exchange  (PCE),  and  Midwest  Stock  Exchange  (MSE). 

HOW  OPTIONS  WORK 

To  understand  why  CBOE  type  calls  are  so  success- 
ful, the  motives  of  buyer  and  writer  alike  need  to  be  ex- 
amined. First,  we  need  a  brief  explanation  of  the  in- 
teraction of  stock  and  option  prices.  Using  the  stock 
prices  of  a  hypothetical  company,  the  cost  of  a  call  with 
a  $50  strike  price  at  various  stock  prices  with  6 
months  to  go,  3  months  to  go,  and  at  expiration  is 
shown  in  Table  1 . 

FEBRUARY  1977 


MICROCOMPUTER 
STOCK  OPTIONS 

TO  HEDGE  OR  NOT  TO  HEDGE — 
THE  OPTION  IS  YOURS 


Until  recently  a  buyer  of  calls  had  to  go  to  a  call 
broker.  This  method  was  relatively  slow  and  resale 
was  difficult 

By  Edward  Christianson 


Table  1 


—  Cost  of  $50  Strike  Call  Option 


o 

o 

D) 

o 

O 

c 
o 

s 

at 

M 

"5 

M 

c 

5" 

-at 
o 
o 

e 

O 

«£ 

UJ 

W 

«o 

n 

< 

40 

$  50 

$  37 

$  0 

45 

200 

150 

0 

50 

500 

350 

0 

55 

800 

650 

500 

60 

1.100 

1.050 

1.000 

65 

1,500 

1.500 

1.500 

For  example,  if  the  stock  was  at  $45  per  share,  a  6 
month  call  would  cost  $200.  If  the  stock  was  at  $55 
per  share,  that  same  call  would  cost  $800. 

The  cost  of  a  call  can  be  divided  into  two  parts: 

1 .  Premium  which  represents  the  value  for  the  time 
left  until  expiration.  It  decreases  slowly  in  the 
first  5  to  6  months,  then  decreases  much  more 
rapidly  during  the  last  3  months  of  life.  Fox  ex- 
ample, using  the  $50  stock  price  in  Table  1,  a 
call  may  be  worth  $500  with  6  months  to  go, 
$350  with  3  months,  and  be  worthless  at 
expiration.  Figure  1  shows  a  relationship 
between  premium  and  time. 

There  are  other  factors  which  influence 
premiums.  The  options  of  more  volatile  stocks, 
which  move  up  quickly  during  rallies,  command 
higher  premiums.  The  supply  and  demand  for  op- 
tions on  the  fioor  of  the  exchange  also  in- 
fluences the  premium.  Also,  a  significant  dividend 
from  an  "income"  stock  represents  added  in- 
come to  the  writer.  Call  buyers  recoghizfe  this  in- 
come, and  adjust  their  bids  on  calls  accordingly. 


MONTHS  TO  EXPIRATION 


Figure  1.  Premium  vs  Time 


i 

ai  lite  money 

Figure  2.  $50  Strike  Call  —  Prices  vs  Stock  Price 


Several  items  should  be  noted  here.  First,  as  the 
stock  price  increases,  the  intrinsic  value  increases,  dollar 
for  dollar,  once  the  stock  price  has  risen  above  the 
strike  price.  Secondly,  the  premium  virtually  disappears 
when  the  stock  price  is  25%  to  30%  above  its  strike 
price.      j  > 

When  thg  stock  price  is  above  the  strike  price,  the 
call  is  said  to  be  "in  the  money."  When  the  stock  price 
is  below  the  strike,  the  call  is  "out  of  the  money." 
When  the  stock  price  is  equal  or  nearly  equal  to  the 
strike,  the  call  is  "at  the  money." 

Using  the  prices  from  Table  1 ;  we  will  calculate  the 
profits,  the  capital  requirements,  and  the  return  on  in- 
vestment for  a  buyer,  a  naked  writer,  and  <p  covered 
writer.  A  naked  writer  is  one  who  writes  (pffers)  the 
option,  but  does  not  own  the  underlying  stock.  A 
covered  writer  owns  the  stock  when  the  call  is 
originally  written. 


tHE  OPTION  BUYER 

In  this  example,  assume  the  stock  is  at  $50  per 
share,  and  a  6  month  $50  call  is  purchased  for  $500. 
Brokerage  fees,  dividends,  and  margin  interest  costs 
are  ignored. 


2.  Intrinsic  value  is  the  stock  price  minus  the  strike 
price  and  is  always  positive.  The  relationship  of 
intrinsic  value  in  the  cost  of  a  call  can  best  be 
explained  in  Figure  2.  For  example,  notice  that 
when  the  stock  price  is  $55,  the  option  cost  is 
$800.  The  intrinsic  value  is  $500  and  the  premium 
is  $300. 


s> 
«J 

1 

w 

inbe 

ot 

o 
_i 

oc 

-ac 
u 

£ 

2 
"5. 

p 

3 

e 

« 

to 

% 

w 

> 

ol 

CJ 

OC 

40 

$  0 

$-500 

$500 

-100 

45 

0 

-500 

500 

-100 

50 

0 

-500 

500 

-100 

55 

500 

0 

500 

0 

60 

1.000 

500 

500 

100 

65 

1.500 

1.000 

500 

200 

In  a  sharply  rising  market,  buying  calls  is  an  ex- 

■■    A**,  Table  2  —  Profit  or  Loss 

cellent  strategy.  at  Expiration  _  Buyer 


30  INTERFACE  AGE 


FEBRUARY  1977 


The  buyer  risks  100%  of  his  capital.  In  fact,  the 
stock  must  rise  10%  (from  50  to  55)  before  he  breaks 
even.  After  that,  however,  the  rewards  are  quite 
dramatic.  A  20%  rise  (from  50  to  60)  will  not  only 
cover  his  costs,  but  will  result  in  a  100%  profit.  In  a 
sharply  rising  market,  buying  calls  is  an  excellent 
strategy. 


. . .  Not  for  the  beginner  in  options. 


THE  NAKED  WRITER 

In  this  example,  the  stock  is  at  $50  per  share,  and  a 
$50  strike  call  is  written  with  $500  in  proceeds  to  the 
writer.  Again,  brokerage,  dividends,  and  margin  in- 
terest are  ignored. 

A  naked  writer  is  required  to  put  up  at  least  30%  of 
the  cost  of  delivering  the  shares.  In  addition,  when  the 
stock  price  is  above  the  strike  price,  he  must  put  up  ad- 
ditional capital,  dollar  for  dollar  for  each  share  for 
which  he  is  naked.  For  example,  when  the  stock  is  $5 
above  the  strike,  he  would  be  required  to  put  up 
another  $500  in  capital.  On  the  other  hand,  if  the  stock 
was  below  the  strike  price,  his  capital  requirements 
would  be  lowered,  again  dollar  for  dollar  for  each 
share.  If  the  stock  was  $5  below  the  strike,  the  capital 
required  would  be  lowered  by  $500.  This  process  is 
called  marking  to  the  market. 


"O 
<B 

a 

CO 

U 

M 
M 

'5 
c 

CJ 

ot 

*o 

O 

<s 
oc 

S£ 

o 

"5 

c 

u 
o 

_3 

o 

"5. 

a 

to 

CB 

> 

ot 

m 

U 

a> 
OC 

40 

$  0 

$  500$ 

500 

100 

45 

0 

500 

1,000 

50 

50 

0 

500 

1.500 

33 

55 

500 

0 

2,000 

0 

60 

1,000 

-500 

2,500 

-20 

65 

1,500 

-1,000 

3,000 

-33 

Table  3  —  Profit  or  Loss 
at  Expiration  —  Naked  Writer 


the  stock.  If  the  call  is  not  exercised,  the  stock  may  be 
sold  or  another  call  may  be  offered  against  it.  For  pur- 
poses of  this  example,  assume  the  stock  is  delivered  or 
sold. 


OPTION  STOCK 


a 

o 

IT 

o 

a* 

CO 

¥> 

CO 

3 

o- 

CP 

at 

o 

_i 

3 

OC 

tock 

CD 

3 

CB 

o 

alue 

o 

apita 

j= 
f 

V) 

> 

OL 

> 

OL 

u 

OC 

40 

$  0 

$500 

$4,000 

$-1,000 

$4,500 

-1 1 

45 

0 

500 

4,500 

-500 

4,500 

0 

50 

0 

500 

5.000 

0 

4,500 

1  1 

55 

a 

500 

b 

0 

4,500 

11 

60 

a 

500 

b 

0 

4,500 

11 

65 

a 

500 

b 

0 

4.500 

1  1 

Table  4  —  Profit  or  Loss 
at  Expiration  —  Covered  Writer 


Result  a.  To  the  writer,  the  value  of  the  call  if  it  is 
exercised  is  irrelevant  —  he  has  made  his  $500  profit. 

Result  b.  Since  he  delivers  the  stock  at  $50  per  share, 
his  proceeds  will  be  $5,000,  regardless  of  the  current 
market  price  of  the  stock. 

Alternative  2.  Close  out  the  position  before  expiration 
by  buying  back  the  option  and  selling  the  stock. 


OPTION  STOCK 


Price 

of  Call 

CO 

I 

CO 

3 

I  Requi 

s? 

o 
o 

CP 

£ 

o 

CD 

~* 
f 

pital 

c 

3 

w 

CO 

> 

OL 

"2 
> 

OL 

OL 

CB 

CD 
OC 

40 

$  0 

$  500 

$4,000 

$-1,000 

$-500 

$4,500 

-1 1 

45 

0 

500 

4.500 

500 

0 

4,500 

0 

50 

0 

500 

5,000 

0 

500 

4.500 

1  1 

55 

500 

0 

5,500 

500 

500 

4,500 

11 

60 

1,000 

-500 

6,000 

1.000 

500 

4,500 

1  1 

65 

1,500 

-1,000 

6,500 

1.500 

500 

4,500 

1  1 

Table  5  —  Profit  or  Loss 
from  Early  Closeout  — 
Covered  Writer 


The  naked  writer  has  an  excellent  return  in  a  declin- 
ing market.  On  the  other  hand,  the  capital  require- 
ments increase  very  rapidly  because  of  the  marking  to 
the  market  requirements.  A  sudden,  sharp  rally  could 
cause  the  naked  writer  to  run  out  of  capital.  At  this 
point,  the  brokerage  firm  would  close  out  his  position, 
resulting  in  a  severe  loss  to  the  writer. 

THE  COVERED  WRITER 

In  this  example,  the  writer  sets  up  his  position  by 
simultaneously  buying  the  stock  (100  shares  at  $50 
per  share)  and  offering  the  6  month  option,  receiving 
$500  as  proceeds.  In  any  hedge  transaction,  the  capital 
required  is  offset  by  the  proceeds  of  the  sale.  Thus,  the 
net  capital  required  is  $4,500  (5000-500).  At  or  near 
expiration,  two  alternatives  are  possible. 

Alternative  1.  Allow  the  call  to  be  exercised  and  deliver 


The  net  results  are  the  same  but  there  are  reasons 
for  choosing  the  second  alternative  over  the  first  as  we 
shall  see  later. 

The  covered  writer  limits  his  profit  somewhat,  but  in 
return,  he  has  more  protection  against  loss.  Covered 
writing  strategies  work  best  in  flat  or  rising  markets. 

LEVERAGE 

Leverage  is  using  a  small  amount  of  capital  to  control 
a  larger  amount  of  capital.  For  example,  a  $500  call 
controls  $5,000  worth  of  stock,  a  leverage  ratio  of  10  to 
1 .  Though  covered  writing  is  the  most  conservative  of 
the  three  methods,  through  increased  leverage,  the 
return  can  be  substantially  increased.  The  covered 
writer  uses  a  margin  account  which  allows  him  to 
borrow  capital  (current  50%)  to  set  up  a  position.  In 


FEBRUARY  1977 


INTERFACE  AGE  31 


return,  the  brokerage  firm  charges  interest,  called 
margin  interest,  on  the  capital  borrowed,  usually  at  not 
less  than  \h%  above  the  prime  rate. 


THE  COVERED  WRITER— MARGINED 

Next,  we  shall  re-examine  the  same  covered  writing 
hedge  using  margin,  again  excluding  brokerage  fees, 
dividends,  and  margin  interest.  The  capital  required  is 
50%  of  the  stock  purchase  minus  the  proceeds  from 
the  sale  of  the  option.  Assume  the  position  is  closed 
out  as  in  Alternative  2. 


Price 

of  Call 

(Loss) 

(Loss) 

o 

Requi 

2£ 

J* 

u 
o 

CO 
CO 

i 

CD 
Zl 

1 

ipital 

c 
a 
o 

<7) 

> 

Q_ 

CO 
> 

Q_ 

a. 

CJ 

OC 

40 

$  0 

$  500 

$4,000 

$- 1 .000  $ 

-500 

$2,000 

-25 

45 

0 

500 

4,500 

-500 

0 

2.000 

0 

50 

0 

500 

5.000 

0 

500 

2,000 

25 

55 

500 

0 

5,500 

500 

500 

2.000 

25 

60 

1,000 

-500 

6,000 

1.000 

500 

2,000 

25 

65 

1.500 

-1,000 

6.500 

1.500 

500 

2.000 

25 

Table  6  — Profit  or  Loss 
from  Early  Closeout  — 
Margined  Covered  Writer 


Note  that  the  return  is  now  25%  instead  of  11%. 
However,  the  percentage  loss  possible  is  also 
increased. 


Choose  a  broker  who  specializes  in  options,  who 
understands  hedges  ...  and  recommends  suitable 
strategies  in  tune  with  your  money. 


BROKERAGE  FEES 

During  the  previous  examples,  we  have  ignored 
brokerage  fees,  dividends  and  margin  interest.  However, 
in  the  real  world,  they  represent  30%  or  more  of  the 
total  profit.  Since  May,  1975,  brokers'  fees  have  been 
negotiable,  with  the  better  customers  getting  larger 
discounts  from  the  old  rate  structure.  A  recent 
development  is  the  rise  of  the  "discount"  brokerage 
firm.  Fully  regulated,  they  do  not  offer  market  research 
nor  recommendations,  but  merely  execute  your  orders 
on  the  stock  exchanges  at  discounts  of  30%  or  more 
from  the  previous  rate  structure.  In  addition,  many 
stocks,  some  of  which  have  listed  call  options,  are 
traded  directly  between  brokerage  firms  as  well  as  the 
floor  of  the  major  exchanges.  Direct  trading  in  this 
manner  is  known  as  over  the  counter  (OTC)  or  the  third 
market.  Commissions  are  less  on  the  OTC  than  on  the 
major  exchanges. 


The  Compucolor 8001 
Is  Also  Available 
Through  The 
Following 
Authorized 
Distributors 

Phoenix  Byte  Shop  West 
12654  North  28th  Drive 
Phoenix,  Arizona  85029 
Alan  P  Hald 
(602)942-7300 

Tem  pe  Byte  Shop  East 
813N.ScoctsdaIeRd. 
Tempe,  Arizona  85282 
Alan  P  Hald 
(602)894-1129 

Amco  Electronics 
414  South  Bascom  Ave. 
San  Jose,  Ca.  95128 
Daniel  Judd 
(408)998-2828 

Computer  Components 
5848  Sepulveda  Blvd. 
VanNuys.Ca.91411 
Dick  Dickinson 

(213)  786-7411 

The  Computer  Store 
63  South  M#in  Street 
Windsor  Locks,  Conn.  06096 
George  Gilpatrick 
(203)627-0188 

Sunny  Com  outer  Stores,  Inc. 
University  Shopping,  Center 
1238A  S.  Dixie  Highway 
Coral  Gables,  Fla.  33146 
Bill  Miller 
(305)661-6042 

Microcomputer  Systems,  Inc. 
144  So.  Dale  Mabry  Highway 
Tampa,  Fla.  33609 
Forrest  K.  Hurst 
(813)879-4301 

Atlanta  Computer  Mart 
509 1-B  Buford  Highway 
Atlanta,  Ga.  30340 
Jim  Oxford 
(404)455-0647 

The  Computer  Mart  of  New  Jersey 
501  Route  27 
Iselin,  N.J.  08830 

Larry  Stein 
(201)283-0600 

Bvte  Shop 
2018  Greene  St. 
Columbia,  S.C  29205 
Nick  Johnson 
(803)771-7824 

The  Communications  Center 
7231  Fondren 
Houston,  Texas  77036 
Bill  Tatroe 
(713)774-9526 

The  Micro  Store 
634  S.  Central  Expressway 
Richardson,  Texas  75080 
David  Wilson 

(214)  231-1096 

Or  Contact  Us  Direct 

5965  Peachtree  Corners  East 
Norcross,  Georgia  30071 
Telephone  (404)  449-5961 

CIRCLE  INQUIRY  NO.  10 


32  INTERFACE  AGE 


FEBRUARY  1977 


The  Compucolor  8001 System, 

It's  A  Stand  Alone  Micro  Computer  Tilth 
Color  Input/Output  Capabilities  All  In  One  Package. 

For  Only  $2995. 

If  you're  looking  for  an  input  device,  an  output  device  and  a  micro 
computer  all  in  one  package,  you've  found  it.  The  Compucolor  8001. 
It's  here  now,  in  color,  on  sale  for  only  $2995. 


We  gave  it 
a  memory 
of  its  own. 

And  Floppy  Tape  Memory 
is  just  for  starters.  Look 
at  these  other  features. 
BASIC  Language,  8080  CPU, 
8  color  CRT  Terminal,  8K 
RAM  Workspace,  Selectable 
Baud  Rate  to  9600,  Two  RS 
232  I/O's,  Keyboard  with  16 
Function  Keys,  Background 
Color,  Lower  Case  ASCII 
Characters,  Roll,  Insert/Delete, 
48  Line  X  80  Characters/Line, 
2X  Character  Height,  thorough 
operating  instructions  and  a 
Graphics  Mode  with  160  X  192 
Elements.  And  our  unique  Nine 
Sector  Convergence  System 
guarantees  you  quick  set-up, 
exceptional  stability  and  out- 
standing color  registration  in  three 
to  five  minutes.  If  you  can  find  a 
better  buy  in  a  color  Intelligent  CRT 
and  Micro  Computer  system,  let  us 


know.  We  think  we've  got  the  best 
of  both  worlds  at  the  best  price 
going.  And  we  want  to  prove  it  to 
you. 

Name  your  game. 

After  all,  you'll  have  your  very 
own  personal  computer  right  at  your 
fingertips.  For  the  most  simple  or 
complex  tasks.  Or  just  plain  fun. 
The  applications  are  unlimited. 
Color  graphics  and  computations, 
check  book  balancing,  educational 
instruction,  tutoring  and  a  unique 
variety  of  computer  games.  Like 


Star  Trek  and  Hangman  and 
Pong.  You  can  even  sit  back  and 
enjoy  a  game  of  chess.  Like  we 
said,  the  applications  are 
unlimited. 

How  about  a  little 
demonstration? 

Youll  find  a  list  of  our 
distributors  at  the  bottom  of  the 
page.  So  drop  by  and  ask  for  a 
demonstration.  Get  some 
answers  to  your  questions. 
And  if  you  aren't  near  one 
of  our  distributors,  give  us  a  call. 
We've  got  the  answers.  The 
Compucolor  8001.  You  won't  find  a 
better  buy  in  a  color  CRT  Terminal 
and  Micro  Computer. 


Compucolor  Corporation 

A  subsidiary  of 
Intelligent  Systems  Corp.  ® 

5965  Peachtree  Corners  East 
Norcross,  Georgia  30071 
Telephone  (404)  449-5961 


CALIFORNIA 

Byte  Shop 
155  Blossom  Hill  Rd. 
San  Jose,  Ca.  95123 
Larry  Grihaiva 
(408)  226-8383 

Computer  Store 

1093  Mission  St. 
San  Francisco,  Ca.  94103 
Al  Chern 
(415)  431-0640 


CALIFORNIA 

The  Computer  Center 
8205  Ronson  Rd. 
San  Diego,  Ca.  92111 
Ron  Eate 
(714)  292-5302 

The  Computer  Mart 
of  Los  Angeles 

625  W.  Katella  No.  10 
Orange,  Ca.  92667 
George  Tate 
(714)  633-1222 


GEORGIA 

The  Computer  Systems 

Center 
3330  Piedmont  Rd.,  NE 
Atlanta,  Ga.  30305 
Jim  Dunion 
(404)  231-1691 
ILLINOIS 
Itty  Bitty  Machine 
1316  Chicago  Ave. 
Evanston,  111.  60201 
Jim  Bannish 
(312)  328-6800 


INDIANA 

Home  Computer  Shop 

10447  Chris  Dr. 
Indianapolis,  Ind.  46229 
James  B.  Baughn 
(317) 894-3319 
MASSACHUSETTS 
The  Computer  Store 
120  Cambridge  St. 
Burlington,  Mass.  01803 
Sid  Halligan 
(617) 272-8770 


WASHINGTON 

Retail  Computer  Store 
410  N.E.  72nd  Street 
Seattle,  Wash.  98115 
Hm  Broom 
(206) 524-4101 

Or  Contact  Us  Direct 

5965  Peachtree  Comers  East 
Norcross,  Georgia  30071 
Telephone  (404)  449-5961 


THE  PROGRAM  OUTPUT 

The  best  way  to  demonstrate  the  effect  of  brokerage 
fees  is  to  run  our  margined  covered  writer  example 
through  the  program.  The  output  is  divided  into  four 
sections  —  Heading,  Cost,  Proceeds,  and  Return. 

The  Heading  section  gives  the  date  of  the  evalu- 
ation, and  restates  the  hedge  —  number  of  shares 
bought  and  number  of  options  sold. 

The  Cost  section  includes  the  cost  of  the  shares,  the 
brokerage  fees  to  buy  the  shares  (labeled  IN),  to  deliver 
the  shares  (labeled  OUT),  and  to  sell  the  option  (labeled 
OPTION),  and  the  margin  interest  cost.  The  Proceeds 
section  includes  the  money  received  from  delivering 
the  shares  at  the  strike  price,  the  money  from  the  sale 
of  the  options,  and  dividends  (if  any). 

The  Return  section  includes  the  net  profit  (total 
proceeds  minus  total  cost),  the  net  capital  required,  the 
percent  net  return,  the  number  of  days  to  expiration, 
the  annual  rate  of  return  and  the  breakeven  point.  The 
breakeven  point  is  the  price  of  the  stock  (at  expiration) 
where  no  profit  will  be  made.  It  is  computed  by  sub- 
tracting net  profit  from  the  original  purchase  cost. 

Figure  3  is  sample  output  of  our  margined  covered 
writer  using  the  New  York  Stock  Exchange  brokerage 
rates,  and  Figure  4  uses  the  OTC  rates. 


READY 
RUN 

INPUT  MM> DD,YY,  MARGIN?  CI=YES),  L0AN  RATE  (#.##) 
? 12,  16,  76,  \, 7. 50 

0UTPUT  T0   BE  32  0R  64  CHARACTERS? 
?64 

EVALUAT  I0N  N0,    DIVIDEND    <  $/  SHARE/  iTR) 
?  1,  .  1 0 

N0.    SHARES, PRICE/ SHARE,  MARKET ( 1 =N YSE,  2  =  0T  C) 
?  1 00,  50,  1 

EXP  I RATI0N   MONTH,    STRIKE,  C0ST/0PTI0N 
?  6,  50,  500 

C0VERED  WRITE  N0    1       12      16  76 

BUY    100      SHARES  AT  50 

SELL    1  6      50    ' S  AT   S   500  EACH 


C0  ST 
Y0UR  $  2500 
L0AN  S  2500 
BR0KER' S 

IN  51 
0UT  51 
0PTI0N  26 
MARGIN  80 


PR0CEEDS 
ST0CK  5000 
0PTI0N  500 
DIVIDEND  20 


T0TALS  5208 
M0RE?  C1=YES) 
?  1 


5520 


RETURN 
S   312  0N 
2188  IS 
14.  2  % 
186  DAYS 
=   27. 8  X 
ANNUALLY 
BRK-  EVEN 
IS 

S   46.  8 


Figure  3.  Sample  Using  NYSE  Brokerage  Rate 


EVALUAT  I0N  N0,    DIVIDEND    (  S/ SHARE/ Q  T  R ) 
?2,  .  10 

N0.  SHARES,  PRICE/  SHARE,  MARKET  C  1  =N  YSE,  2  =  0  TO 
? 100, 50, 2 

EXP  I  RAT  I0N   M0NTH,    STRIKE,  C0ST/0PTI0N 

C0VERED  WRITE  N0    2      12      16  76 

BUY    100      SHARES  AT  50 

SELL    1  6      50    ' S   AT   S   500  EACH 


C0ST 
Y0UR  S  2500 
L0 AN  S  2500 
BR0KER'  S 

IN  25 
0UT  25 
0PTI0N  26 
MARGIN  78 


PR0CEEDS 
ST0CK  5000 
0FTI0N  500 
DIVIDEND  20 


T0TALS  5154 
M0RE?    (1  =  YES) 
?0 


ST0P   IN   LINE  145 


5520 


RETURN 
S    366  0N 
2134  IS 
17.1% 
186  DAYS 
=    33.  5  % 
ANNUALLY 
BRK-  EVEN 
IS 

S   46-  3 


READY 

Figure  4.  Sample  Using  OTC  Brokerage  Rate 

The  annual  rate  of  return  will  be  increased  if  the 
months  until  the  premium  is  gone  can  be  shortened. 

COMPOUNDING  YOUR  PROFITS 

Another  way  to  increase  leverage  is  by  compounding 
your  profits.  In  the  case  of  the  covered  writer, 
compounding  is  accomplished  by  taking  the  profit  as 
soon  as  it  becomes  available  and  immediately  re- 
investing it,  rather  than  waiting  until  expiration.  The 
effect  of  compounding  can  best  be  demonstrated 
through  a  measure  called  the  annual  rate  of  return 
which  is  calculated  as  follows: 


ANNUAL  RATE 
OF  RETURN 


rate  of 
return  % 


12  months 


months  until 
premium  is  gone 


In  our  previous  example,  the 
ANNUAL  RATE  OF  RETURN  =  25%  x  12/6  =  50% 

The  annual  rate  of  return  will  be  increased  if  the 
months  until  the  premium  is  gone  can  be  shortened. 
Referring  again  to  Table  1  or  Figure  2,  notice  that  the 
premium  disappears  when  the  stock  price  rises  high 
enough.  Suppose  our  margined  covered  writer  notices  3 
months  later  that  the  stock  is  now  at  $65,  and  the 
option  cost  is  $1,500.  He  can  close  out  his  position 
now,  and  pocket  the  $500  profit.  Look  what  happens 
to  the  annual  rate  of  return. 

ANNUAL  RATE  OF  RETURN  =  25%  X  12/3  = 
100% 

He  is  now  free  to  evaluate  market  conditions  and 
enter  into  a  new  hedge. 


In  any  hedge  transaction,  the  capital  required  Is 
offset  by  the  proceeds  of  the  sale. 


RUNNING  THE  PROGRAM 

You  will  need  the  latest  option  quotations.  Either 
the  Wall  Street  Journal  (daily)  or  Barron'  Weekly  is  a 
complete,  and  reliable  source.  The  program  requires 
input  in  the  following  order: 


32B    INTERFACE  AGE 


FEBRUARY  1977 


Option 

NCR 

Jan25 

NCR 

Jan30 

NCR 

Jan35. 

NCR 

AnrK) 

NCR 

Anr^*i 

NCR 

Inl'Yl 

NCR 

inn*; 

N  Semi 

N  Semi 

1              .  .  . 

N  Semi 

N  Semi 

N  Semi 

N  Semi 

N  Semi 

/ViaVZ  D .... 

N  Semi 

fWJVoU.  .  .  . 

11   «Jd  1 II 

iVtayoj.  . .  . 

N  Semi 

Wavy /40 

N  Semi 

Aua9^ 

N  Semi 

Ai  in 'if) 

Nw  Ai  r 

Jan25 

Nw  Ai  r 

Nw  Ai  r 

Ian'*1* 

Nw  Air 

Anr9*» 

Nw  Ai  r 

Anrlfi 

Nw  Air 

ADr^S 

Nw  Air 

liil?^ 

Nw  Air 

Occi 

Drri 

rV"ri 

/ULavyOTk 

Ai  in1 

Pennz 

R&nnz 

Jan30 

Pennz 

Jan35 

R&nnz 

Apr25 

P'efYTft 

Pennz 

Apr35 

Pennz 

iiii?^ 

R&nnz 

Jul30 

Pepsi 

Jan70 

Pepsi 

Jan80 

Pepsi 

Jan90 

Anr7H 

Ptorvci 

Anrfld 

repsi 

AnrQH 

Pepsi 

li  iion 

inion 

rvJlaf 

larvVl 

Polar 

Jcjn35 

Polar 

Jan40 

Polar 

Apr35 

Polar 

Jul35 

Polar 

Apr40 

ruiai 

larviS 

Pnl^r 
njiai 

AnrA^ 

ruld( 

1 1 1 1  ATt 

O  C  A 
r\  l  m 

lanTO 

r  r  a 

r\  M 

r  r  a 

r\  M 

bnY) 

R  C  A 
K  M 

A  nrOn 

r  r  a 

r\  M 

Anr9*» 

R  C  A 

r\  L  M 

ADrV) 

R  C  A 

r\  L  M 

InlTO 

R  C  A 

l\  L  M 

liil?^ 

rvo  y  11 11 1 

Feb50 

Ray  inn 

r\ay  inn 

Ravthn 

lUJ  J  11  II 1 

Mav60 

Ravthn 

AAav70 

Raythn 

Aug50  

Ravthn 

Aug60  

Sales    Open  Net  Stock 

(100s)    Int.  High  Low  Last  Chg.  Close 


4   315  11     10%  11    +  1i/2 
290  1398   6V4   47s  6V4  +  1 
1073  5905    2      1%  1  13-16+7-16 


51 
751 

14 
226 


434 
2598 
88 
778 


2867  3892 


7V4    6      7V4+  1 
3%  2  9-16  3%+7-16 
7%   6%    7V4+  1/4 
4V4    3V2   4    +  % 
5Vb   4  41/4  


5872  11712  2Vb  1  9-16  1  11-16-1-16 


3182  12388  % 
578  8502  3-16 
228  4854 
3  5094 
788  2261 

2287  6933 

1800  6958 


Vb 
1-16 
6V4 


1/2 
Ve 
1-16 
1-16 
5% 


1/2- 1-16 
Va-M6 

1-16  

1-16  

5V2-  »/4 


3%  2  15-16  3  -  Vb 
1%    1%  1  7-16-  Vb 

1457  5188  13-16  9-16  11-16  

588   853    7Va    6V4   6%-  Ve 
1233  1712   4V'2   3%   3%-  Va 

56  411  5%  5  51/4-  Vb 
551  3027    1%  1  3-16  1  3-16-3-16 

225  2280  5-16     Vb     Vb-  Vb 
33    1  43   6      5%   57/8+  Vb 
250  1662  2  11-16  2%  2%- 
167  1377  15-16    %  13-16-1- 

4    131    6%   6%  6%- 
131    606   3V2   3      3  - 
1359  2410    71/4    5%  678+ 
7458  21020  2  7-16  1  9-16  2  1-16+ 1/4 
622  2146   7%   6Ve    7    +  % 
2807  10179  3V4  2  3-16  27/8+7-16 
330   437   7V2   6V4    7V4+  V2 
1329  2776  3% 

57  416  7V2 
458  2815  27/8 

290  3667     %  3-16  3-16-3-16 
37     44    7  %   7i/8    7V2-  Vb 
158  1.6X5  3% 


Ve 
-16 
1/4 
Vb 
% 


2%  3%+7-16 
7  71/4-  1/4 
2 Ve  2  7-16-1-16 


316  1939  1  3-16 


24 
56 
162 
246 
237 
63 
111 
34 
19 
16 


82 
533 
191 
548 
347 

86 
267 
400 

66 
110 


3-16-3 
7V2- 
3V4.... 
1  - 
7%  + 
37/8- 


2934  2907 
7460  8838 


3-16 
7i/8 

3 

7/8 

7%  7 
4V4  37/8 
13%  11Vb  11Vb- 
4V4    2V4  2V2- 
3-16 
13 
4V2 
1% 
5% 
2% 
7V2 
3% 


Va 

V4 

Vb 
7/b 
-  % 

5-16  

137/8+  1V4 
4%-  1/4 

1%  

5%-  Vi 

2%  

8%  +  1% 
4V4+  1 

1*61  23304  2  1-16  Vb  1  7-16+9-16 
2442  4858   7Va    5      5%+  7/8 
642  2421    8      6      6%  +  % 
6543  10529  5V4    2%  27/8+9-16 
2836  14935  9-16  3-16  7-16  +  5-16 
2988  6349  1  15-16  15-16  1%+7-16 
5      3%   4    +  % 
7%   5Va    7Va+  2 
2%    1       2V8+  1Va 


% 

UV2 
6 
2 

7V4 
2% 
10% 

57/8 


1720  3445 
386  290 

3547  7624 

1375  12628 
103  193 

1803  5112 


V4 

7% 


1-16 
5% 


3-16  +  1-16 

7V4+  17/8 


623  2322 


3Vb  1  13-16  27/8+1V8 
1714  7316  15-16  7-16  13-16+5-16 
108    257    7V2   5%    7V4+  1% 
3%  2  5-16  3V2+  1'/b 
12      11%  117/8+  2% 
41/4    3V^    3V4+  % 
5-16     1/4  5-16  +  1-16 
5%   5      5Vb+  1, 
1'/2  1  1-16  1V4+  VB 
12V2  I2V2  12i/2  

6%    6V2    6^4+  1'/2 


8 
116 
6 
23 
81 
4. 
5 


67 
802 
672 
205 
336 

47 


36V4 
36i/4 
36V4 
36V4 
36V4 
36V4 
36V4 
277/8 
277/8 
277/8 
277/8 
277/8 
277/8 
277/8 
277/8 
277/8 
277/8 
277/8 
277/8 
29% 
29% 
29% 
29% 
29% 
29% 
29% 
29% 

217/8 
217/8 

21  7/b 

217/8 
217/8 
217/8 

321/a 
32'/8 
32V8 
32'/fc 
32V8 

SV/B 

32i/8 
321/b 
80% 
80% 
80% 
80% 
80% 
80% 
80% 
80% 
387/a 

387/8 
387/8 
387/8 
387/8 
387/8 
387/8 

387/b 
387/b 
26% 
26% 
26% 
26% 
26% 
26% 
26% 
26% 
61  Ve 

611/8 

61i/b 

611/8 

61  Vb 

61 '/8 
61  »/8 


Example.  Excerpt  from  Barron's  Option  Quotation 

RUN 

INPUT  MM*DD*YY*    MARGIN?    Cl=YES)*    L0AN  RATE 
? 12*  10*  76*  1*7. 5 

0UTPUT  T0    BE    32   0R   64  CHARACTERS? 
?64 

EVALUAT  10N  N0*    DIVIDEND    <$/  SHARE/  QTR) 

FEBRUARY  1977 


?  101*  .  08 

N0.  SHARES*  PRI  CE/  SHARE*  MARKET  (  1=NYSE*  2  =  0  TC  ) 
?  200*  38.  87*  2 

EXP  1  RAT  10N   M0MTH*    STRIKE*  C0ST/0PT10M 
?4*  35,  562 

C0VERED  WRITE  N0    101      12      10  76 

BUY   200      SHARES  AT   38. 87 

SELL   2  4      35    1 S  AT   £    562  EACH 


C0ST 
Y0UR  S>  3887 
L0AN  S  3887 
BR0KER' S 

IN  4  2 

0UT  42 
0PTI0N  36 
MARGIN  77 


PR0CEEDS 
ST0CK  7000 
0PTI0N  1124 
DIVIDEND  16 


T0TALS  7971 
M0RE?  C1=YES) 
?  1 


8140 


RETURN 
S    169  0N 
2944  IS 
5.7  X 
131  DAYS 
=    15.  8  X 
ANNUALLY 
BRK-EVEN 
IS 

S  38 


Example  1.  Using  Polaroid  April  35's 


EVALUATI0N   N0*    DIVIDEND    ( S/ SHARE/ QTR) 
?  1  02*  .  08 

N0.  SHARES*  PRICE/ SHARE*  MARKET  <  1=NYSE*  2  =  0TC) 
?200*38.87*2 

EXP  I RATI0N   M0NTH*    STRIKE*  C0ST/0PTI0N 
?4*  40*  287 

C0VERED  WRITE  N0    102      12      10  76 

BUY   200      SHARES  AT   38.  87 

SELL   2  4      40    ' S  AT   S    287  EACH 


C0ST 
Y0UR  S  3887 
L0AN  S  3887 
BR0KER*  S 

IN  42 
0UT  42 
0PTI0N  32 
MARGIN        9  1 


PR0  CEEDS 
ST0CK  8000 
0PTI0N  574 
DIVIDEND  16 


T0TALS  7981 
M0RE?    C1  =  YES) 
?  1 


8590 


RETURN 
$   609  0N 
3504  IS 
1  7.  3  X 
131  DAYS 
-   4  8.  2  X 
ANNUALLY 
BRK-EVEN 
IS 

$   35.  8 


Example  2.  Using  Polaroid  April  40's 


EVALUAT I0N  N0*    DIVIDEND    ( S/ SHARE/ CTR) 
?  103*  .  08 

N0.  SHARES* PR  ICE/ SHARE* MARKET ( 1=NYSE*  2  =  0TC) 
?200*  36.  67*2 

EXP  I  RAT  I0N   M0NTH*    STRIKE*  C0ST/0PTI0N 
f  Ai  45*  1ST 

C0VERED  VRITE  N0    103      12      10  76 

BUY  200     SHARES  AT   38.  87 

SELL   2  4      4  5    ' S  AT   S    137  EACH 


C0ST 
Y0UR  S  3887 
L0AN  S  3887 
BR0KER ' S 

IN  42 
BUT  42 
0PTI0N  29 
MARGIN  99 


PR0  CEEDS 
ST0CK  9000 
0PTI0N  274 
DIVIDEND  16 


T0TALS  7986 
M0RE?  <1*YES> 
?  1 


9290 


RETURN 
S    1304  0N 
3809  IS 
34.  2  X 
131  DAYS 
»   95. 2  X 
ANNUALLY 
BRK-EVLN 
IS 

S   32.  3 


Example  3.  Using  Polaroid  April  45's 

INTERFACE  AGE  33 


INPUT 


SOURCE 


This  is  the  month,  day,  and  year  of 
the  quotations. 

If  the  stock  is  bought  on  margin,  enter 
a  1,  otherwise  enter  any  number. 
This  is  the  margin  interest  rate, 
expressed  as  a  percentage.  It  is 
usually  !/2%  above  the  prime  lending 
rate.  Ask  your  broker  or  use  7.50  as 
a  good  approximation. 
The  output  is  16  lines  high,  and  can 
be  either  32  or  64  characters  wide. 
Your  choice.  If  the  program  could 
handle  strings,  it  would  be  the  stock 
name. 

This  information  is  available  from 
many  sources,  including  Barron's.  It 
can  be  zero. 

The  number  of  shares  purchased.  It 
must  be  in  multiples  of  100  shares. 
Fractional  prices  must  be  converted 
to  decimal  prices,  for  example  371/4 
is  37.25.  This  information  will  be  the 
last  item  in  each  line  of  the  option 
quotations. 

Ask  your  broker  if  the  stock  can  be 
purchased  in  the  3rd  (OTC)  market. 
This  is  the  number  of  the  expiration 
month,  1  =January,  4= April,  etc. 
The  program  assumes  all  options  ex- 
pire on  the  20th  day. 
On  your  option  quotations,  this  is  the 
number  next  to  the  month.  For  ex- 
ample, a  "Jan35"  is  an  option  which 
expires  in  January  and  has  a  strike  of 
$35/share. 

Option  prices  are  given  on  a  per 
share  basis.  To  compute  the  total 
cost  per  option,  multiply  the  price  by 
100.  For  example,  2%  is  $237.50 
per  option.  Use  the  last  or  closing 
prices  as  input. 

RUN 

INPUT  MM*DD*YY*    MARGIN?    (l=YES>*   L0AN   RATE  (#.##) 


MM.DD.YY 
MARGIN?  (1  =YES) 
LOAN  RATE  (#.##) 


OUTPUT  TO  BE  32  OR 
64  CHARACTERS 

EVALUATION  NO. 


DIVIDEND 
($/SHARE/QTR.) 

NO.  SHARES 

PRICE/SHARE 


MARKET 

(1  =NYSE,2  =  0TC) 
EXPIRATION  MONTH 


STRIKE 


COST/OPTION 


EVALUAT I0N  N0*    DIVIDEND    ( S/ SHARE/ OTR) 
?  105,. 08 

N0.  SHARES*  PRICE/ SHARE, MARKET ( 1=NYSE* 2=0TC) 
7200* 38. 87, 2 

EXP  I  RAT  I0N  M0NTH,    STRIKE,  C0ST/0PTI0N 
7 1, AO, 144 

C0VERED  WRITE  N0    105      12      10  76 

BUY  200     SHARES  AT  38.87 

SELL  2  1      40    'S  AT   S    144  EACH 

C0ST  PR0CEEDS  RETURN 
Y0UR  S   3887  ST0CK     8000   S   369  0N 
L0AN   S   3887  0PTI0N      288     3744  IS 
BR0KER' S  DI VI  DEN  DO        9.8  X 
IN          42  41  DAYS 
0UT         42  =   87. 2  X 
0PTI0N      30  ANNUALLY 
MARGIN        31  BRK-EVEN 
    IS 

T0TALS  7919  8288     5  37 

M0RE?  (1=YES) 

?0 


ST0P  IN  LINE  145 

Example  5.  Using  Polaroid  January  40's 

The  editing  of  data  is  extensive.  Any  item  which  is 
used  in  the  computation  is  checked  for  reasonable- 
ness. If  multiple  errors  exist  in  an  input  line,  each  one  is 
described  briefly  along  with  the  erroneous  value  before 
the  datum  is  to  be  reinput. 

By  studying  the  examples  given  with  the  actual 
data,  it  will  be  apparent  that  there  is  a  considerable 
difference  between  the  rate  of  return  for  various  strike 
prices,  even  with  the  same  expiration  date.  This 
difference  depends  on  whether  the  option  is  in,  at,  or 
out  of  the  money.  The  option  you  choose  depends 
upon  your  investment  goals,  your  assessment  of  the 
market  in  general,  and  your  stock  during  the  life  of  the 
option.  Figure  5  below  illustrates  this  relationship. 


7  1  2,  10*  76*  1*  7.  5 

0UTPUT  T0   BE  32  0  R  64  CHARACTERS? 
?32 

EVALUAT  I0N  N0*    DIVIDEND    C  $/ SHARE/ QTR> 
7  104*  •  08 

N0.    SHAPES*  PRI CE/ SHARE* MARKET  < 1=NYSE*2=0TC> 

?200*  35*0 

??0 

EXCHANGE   IS    1   0  R  2  0 

N0.  SHARES*  PRICE/ SHARE*  MARKET  (  I  *N  YSE*  2=0 TO 
7200*  38.87*2 

EXP IRAT I0N   M0NTH*    STRIKE*    C0ST/0PT I0N 
71*  35*425 

C0VERED  WRITE  N0    104      12      10  76 

BUY  200     SHARES  AT  38.87 

SELL  2  1      35    ' S  AT  $   425  EACH 

C0ST  PR0CEEDS  RETURN 

Y0UR  $    3887    ST0CK      7000   $-68  0N 
L0AN   $    3887   0PTI0N      850     3181  IS 
BR0KER*  S         DIVIDENDO     -2.1  Z 


IN  42 

0UT  42 

0PTI0N  34 

MARG IN  26 


T0TALS  7918 
M0RE?  (1=YES> 
7  1 


4  1  DAYS 
=  -18.6  X 
ANN  UALLY 
BRK-EVEN 

  IS 

7850     $  39.2 


Example  4.  Using  Polaroid  January  35's 


34  INTERFACE  AGE 


Figure  5.  Market  Trend  vs  Risk 

FEBRUARY  1977 


When  available  a  deep  "in  the  money"  ra//would  be 
two  or  more  strikes  below  the  "at  the  money"  call.  A 
deep  "out  of  the  money"  call  would  be  two  or  more 
strikes  above  the  "at  the  money"  call. 

GETTING  STARTED 

If  you  are  ready  for  option  writing,  I  recommend  that 
you  do  some  further  reading.  Three  excellent  books 
available  on  option  strategies  are  listed  at  the  end  of 
this  article.  They  also  include  sections  on  income  tax 
requirements,  a  subject  certainly  worth  studying. 
Choose  a  broker  who  specializes  in  options,  who 
understands  hedges,  order  placement,  floor  execution, 
and  most  importantly,  your  investment  goals  and  will 
recommend  suitable  strategies  in  tune  with  these 
goals.  Don't  settle  for  less,  remember  it's  your  money! 

A  special  thanks  to  Ward  Christenson  for  the  use  of 
his  ALTAIR  8800  system  and  assistance  during  one 
marathon  session  of  inputting,  debugging  and  testing. 

PROGRAM  SPECIFICATIONS  AND  REMARKS 

The  program  is  written  in  Processor  Tech  5K  Basic. 
Because  of  extensive  comments  and  editing,  its  size  is 
about  4.2K.  Eliminating  the  comments  and  making  the 
edit  error  descriptions  more  cryptic  could  reduce  it  to 
about  3K. 

SUGGESTED  READING 

The  New  Options  Market  by  Max  G.  Ansbacher  (Walker 
&  Co.).  A  good  book  for  the  beginning  student  of  op- 


tions. He  covers  strategies  for  buying  options,  naked 
writing,  covered  writing  as  well  as  more  advanced 
strategies  using  options. 

2.  The  Stock  Options  Manual  by  Gary  L.  Gastineau 
(McGraw-Hill).  Another  good  book  for  the 
student  of  options.  He  introduces  some  proba- 
bility theory  into  evaluation  of  options  as  well  as 
graphically  displaying  various  hedging  strategies. 

3.  How  the  Experts  Beat  the  Market  by  Thomas  Nod- 
dings  (Dow  Jones-Irwin).  Not  for  the  beginner  in 
options.  He  presents  numerous  hedging  strategies 
using  convertible  bonds,  warrants,  and  options. 

DISCLAIMER  (MY  HEDGE) 

The  charts,  tables,  and  examples  presented  in  this 
article  are  for  illustration  only,  and  should  not  be  con- 
strued as  recommendations  for  purchase  and/or  sale  of 
any  individual  stocks  or  related  options.  Further,  it  is 
not  intended  to  indicate  nor  imply  in  any  manner  that 
the  methods  described  in  this  article  can  guarantee 
profitable  results  in  the  future. 


EXPLANATION  OF  PROGRAM 

The  program  is  highly  modularized  in  design,  that  is, 
each  function  is  processed  by  a  separate,  independent 
group  of  statements.  By  using  this  method,  the  basic 
program  can  be  set  up  and  expanded  a  piece  at  a  time. 
Conversely,  whole  modules  could  be  "lifted"  and  used 
without  modification. 


the  VECCCR  1- 

Reset  and  Go 

PROM/RAM 

BOARD 

from 


PROM:  Space  for  2K  bytes,  1702A.  Store 
bootstrap  loaders  and  monitors. 

RAM:  1K  bytes,  2102LIPC,  450  ns,  low 
power.  NO  NEED  TO  RELOCATE  STACK 
WHEN  ADDING  MEMORY. 

CIRCUITRY:  Replaces  memory  write  logic 
on  ALTAIR™  and  Imsai  front  panels. 

REGULATORS:  Two  regulators.  No  need  for 
regulated  power  supply. 

JUMP-ON-RESET:  PROM  program  execu- 
tion starts  at  any  location  in  memory  without 
interfering  with  programs  in  any  other  por- 
tion of  memory. 

S-100  BUS;  +8  and  -16  VDC;  P/C  BOARD 
SOLDER  MASKED  BOTH  SIDES  WITH 
PLATED  THROUGH  HOLES;  ALL  SOCKETS 
NCLUDED. 

OPTIONAL  FIRMWARE:  512  byte  monitor 
for  use  with  Tarbell  tape  interface  on  2, 
1702A  PROMs. 

PROM/RAM  KIT  WITHOUT  PROMS      $  89 

+  OPTION  A-SIO  Rev.  1  or3  P+  S  $129 

+  OPTION  B  -  2  SIO  (MITS)  $129 

+  OPTION  C-SIO  2  (IMSAI)  $129 

+  OPTION  D  -  Poly  Video  Interface  $159 
(Includes  Video  Driver) 

California  residents  please  add  6%  tax. 

IMMEDIATE  DELIVERY  FROM  FACTORY 
OR  YOUR  LOCAL  COMPUTER  STORE 

T.M. 

CCR  G3APHC  inc. 

717  LAKEFIELD  ROAD.  SUITE  F  *  WEST  LAKE  VILLAGE,  CA  91361  *  1805)  497-0733 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  35 


INTERFACE  AGE  35 


There  are  several  features  worth  noting.  First,  liberal 
use  of  comments  will  help  clarify  the  purpose  of  a 
module.  Second,  the  error  checking  routines  are  exten- 
sive. In  addition,  the  reason  for  the  error  or  the 
allowable  range  of  the  value  is  displayed  as  well  as  the 
erroneous  value.  Third,  the  style  of  programming  is 
made  as  consistent  as  possible.  For  example,  extensive 
use  of  the  GOSUB-RETURN  statements  allow  the 
main  program  logic  to  remain  in  sequence.  When  a 
task  must  be  done,  the  program  GOSUB's  to  the  task 
and  RETURN'S  when  it  is  done. 

Fourth,  GOTO  statements  were  not  used.  In  a  few 
cases,  the  IF  -  THEN  (go  to)  is  used  to  move  program 
control  to  reinitiate  an  input  request  or  branch  to  a 
return  statement. 


FIND  ERRORS 


►^"gosub  ^ 


PRINT  MESSAGE 


INCREMENT 
ERROR 
COUNTER 


-►     SAME  \S  ABOVE  I 
CEPT  I 
5SAGE 
MAY  VARY 


SAME  AS  ABOVE 


J 


91  9? 

INITIALIZE 
CALENDAR 
ARRAYS 

 1 

120  i 

^GOSUB  301 


GET  DATE 
MARGIN' 
LOAN  l?ATl 


|        GOSUB  400 
TO  CHECK 
FOR  ERRORS 
ROUTINE 


RETURN  FROM 
CHECK  FOR 
|  ERRORS 
ROUTINE 


INPUT  PORTION 
COMPUTATION  PORTION 
■  OUTPUT  PORTION 


^  RE  I URN  ^ 


Main  Program  —  Overview 


Figure  A 


.J 


SAME  AS  ABOVE 
EXCEPT 
MESSAGE 
MAY  VARY 


SAME  AS  ABOVE 


Check  for  Errors  Routine 


FROM  GOSUB  210 


(_> 


INPUT 
1  V*.  L.AllON 
NO  R  DIVIDEND 

 J 

/ 

YES 

1 
1 

RETURN  ^ 


G 


iNPUl 

olUrON 

SAIi    DA  I A 


r— C  ) 


Figure  B 


GOSUB  550 
CHECK  FOR 
ERRORS 


I  1 

GOSUB  900 
CHECK  FOR 
ERRORS 


RETURN 


36  INTERFACE  AGE 


Evaluate  Covered  Write-lnput  Portions  Figure  C 

FEBRUARY  1977 


Example.  Demonstration  of  Extensive  Edits 


COMPUTE 
STOCK  1 
OPTION  I 


COMPUTE 
DIVIDEND 
PAYMENT  & 

TOTAL 
PROCEEDS 


c 


J 


COM 
DA 
IN  LI 
OPT 

3UTE 
YS 

=  E  OF 
ION 

h 

COMPUTE  NO 
OF  QUARTERS 
IF  >45  DAYS 

GOSUB  1301 


COMPUTE 
TOTAL  COST 
YOUR  COST 

LOANED  S 


COMPUTE 
BROKERAGE 
ON  STOCK  IN 
STOCK  OUT,  AND 
OPTION 


COMPUTE 

MARGIN 

«  ( 

INTEREST 

&  TOTAL  COST 

Evaluate  Covered  Write-Computation 


Figure  D 


T 


PRINI 
RESULTS 


RETURN  ^ 


^   RETURN  ^ 

Evaluate  Covered  Write-Output 

FEBRUARY  1977 


Figure  E 


RUN 


INPUT  MM,  DD,  YY,    MARGIN?    (1=YES),    L0AN  RATE 

776,0,0,4, 3. 70 
DATE  ERROR     76   0  0 
DATE  ERROR     76   0  0 

INPUT  MM,  DD,  YY,    MARGIN?     Cl=YES),    LOAN    RATE  (#.##) 

?76,  0,  0,  1,  3.  0 
DATE  ERROR     76   0  0 
DATE  ERROR     76   0  0 
RAN  GE=  5   TO    MX  3 

INPUT  MM,  DD,YY,  MARGIN?  Cl=YES),  LOAN  RATE  (#.##) 
?  12,  10, 76,  1, 7. 5 

OUTPUT   TO    BE    32  OR   64  CHARACTERS? 
?32 

EVALUATION  NO,    DIVIDEND    ( $/ SHARE/ QTR) 
? 100, 6 

DIVIDEND  RANGE    IS   0    TO    $ 5  6 
EVALUATION  NO,    DIVIDEND    C  $/ SHARE/ QTR ) 

? 100, . 08 

NO.    SHARES,  PRICE/  SHARE,  MARKET  (  1  =N  YSE,  2^0  TO 

?  125,  38.  87,  3 

NOT  EVEN    1 00 ' S      1 25 

EXCHANGE    IS    1    OR   2  3 

NO.    SHARES,  PRICE/  SHARE,  MARKET  C  1=NYSE,  2=0  TO 
?200, 38. 87, 2 

EXPIRATION   MONTH,    STRIKE,  C0ST/0PTI0N 
?  0,  0,  0 

MONTH   ERROR  0 
STRIKE  <  1  0  OR  >  3000 
PRICE  <    S25  0 

EXPIRATION   MONTH,    STRIKE,  COST/OPTION 
?4, 40, 287 


COVERED  WRITE  NO    100      12      10  76 

BUY   200      SHARES  AT  38.87 

SELL   2  4      40    *  S  AT   $   287  EACH 


COST  PROCEEDS 
YOUR  $    3887    STOCK  8000 
LOAN    S    3887  OPTION  574 
BROKER'S  DIVIDEND  16 

IN  42 
OUT  42 
OPTION  32 
MARGIN        9  1 


8590 


RETURN 
$   609  ON 
3504  IS 
17.3  Z 
131  DAYS 
=   4  8.  2  % 
ANNUALLY 
BRK-EVEN 
I  S 
S   35.  8 


TOTALS   7  981 
MORE?  (UYES) 
?0 


STOP  IN  LINE  145 
READY 


10      REM    STOCK   MARKET   HEDGE   -    COVERED   WRITING  STRATEGY 
20      REM   WRITTEN    BY   EDWARD   CHRISTIAN 50N  12/15/76 

90  DIM    C(12)      ;    REM    SET   UP   JULIAN    DATE  ARRAY ' 

91  DATA   0*  31*59*  90*  120*  151*  182*  212*  243*  273*  304*  334 

92  FOR    1=1    T0    12  J    READ   CU)    ;    NEXT  I 

95    DIM   MU2)      ;    REM    SET  UP  M0NTH  DESCRIPTIONS' 
9  7   FOR    1=1    T0    12J    M<I>=IJ    NEXT  I 
120   G0SUB   30  1;    REM    SET   UP    INITIAL  VALUES' 

125   G0SUB   210;    REM    GET    INPUT   DATA   AND   EVALUATE  POSITION' 

130  PR  IN  T"M0  RE?  <1=YES)"* 

135    INPUT  Al 

140    IF   A  1  =  1    THEN  125 

145  STOP 

210   GO  SUB   501:    REM   GET   STOCK   DESCRIPTION   AND  DIVIDENDS' 

220  GO  SUB   601;    REM   GET   STOCK   PURCHASE  DATA' 

230   GO  SUB   801;    REM    GET   OPTION    SALE   SIDE  DATA' 

240   GO  SUB    1 00  1  ;    REM   COMPUTE   TOTAL   PROCEEDS    IF  CALLED' 

250   G0SUB    1201;    REM   COMPUTE  TOTAL  COSTS' 

260   GO  SUB    1501;    REM   COMPUTE  NET  PROFITS*    RATE  OF   RETURN  * 
270   GO  SUB    1601;    REM    DISPLAY  RESULTS' 
280  RETURN 

301    PRINT"INPUT  MM*  DD*  YY*    MARGIN?     (1=YES)*    LOAN    RATE  (#.##)" 


INTERFACE  AGE  37 


305  INPUT  M/D/Y/M3/R 

306  Ml=l 

310   G0SUB  400;    REM   CHECK   F0 R  0BVI0US    INPUT  ERR0RS 
315   IF   El    >    0  THEN  301 

320   PRINT"0UTPUT  T0   BE   32   0R   64  CHARACTERS? 
325    INPUT  VI 
330  RETURN 

400    El    =    0;    REM   El    I S  AN    ERR0R  FLAG ' 

403    IF   M< 1    THEN    G0SUB  450 

406    IF  M>12   THEN   G0 SUB  450 

409    IF   D< 1   THEN   G0SUB  450 

412    IF  D>31   THEN   G0SUB  450 

415    IF  Y<0  THEN   G0SUB  450 

418    IF  Y>99   THEN    G0SUB  450 

421    IF  M3<>1    THEN   440;    REM  N0T  MARGINED" 
424  Ml=.5;    REM   SET   T0   50X  RATE" 
427    IF   R<5   THEN    G0SUB  455 
430    IF  R>14  THEN   G0SUB  455 
440  RETURN 

450  PRINT"DATE  ERR0R  "/  M/  Dj  Y 

451  G0SUB  2000 

452  RETURN 

455  PRINT"RAN  GE=  5  T0    14X    "/  R 

456  G0SUB  2000 

457  RETURN 

501   PRINT"EVALUAT  I0N  N0>    DIVIDEND   (  1/ SHARE/ QTR ) " 
505   INPUT  N9/D1 

510   G0SUB  550;   REM   CHECK  F0 R  0BV10US  ERR0RS' 
515    IF   El   >    0  THEN   50  1 
520  RETURN 

550  El   =  0 

551  IF  DUO  THEN  G0SUB  575 
554  IF  Dl>5  THEN  G0SUB  575 
560  RETURN 

575  PRINT" DIVIDEND  RANGE   IS  0  T0   S5  "/Dl 

576  G0SUB  2000 

577  RETURN 

601  PRINT"N0.  SHARES*  PRI  CE/  SHARE.*  MARKET  <  1=NYSE>  2=0  TO  " 
605   INPUT  S1/P1/M9 

610   G0SUB  701;    REM   CHECK  F0R  ERR0  R  S ' 
615   IF   El   >    0  THEN  601 
620  RETURN 

701    El    =    0;    REM   EDIT   ST0CK  DATA" 

706   IF   Sl<100   THEN    G0SUB  751 

709  S9= INTCS1/ 100) 

712   IF   S1<>S9*100  THEN   G0SUB  75  1 

715   IF  Pl<10   THEN    G0SUB  755 

718    IF  Pl>300  THEN   G0  SUB  755 

721  M9=1NT(M9) 

724    IF  M9<1    THEN   G0 SUB  760 

727    IF  M9>2  THEN   G0SUB  760 

730  RETURN 

751  PRINT"N0T   EVEN    1  00  *  S  "/SI 

752  G0SUB  2000 

753  RETURN 

755  PRINT"PRICE< 10   0R  > 300  "/PI 

756  G  0  SUB  2000 


19"  RACK  S-100  BUS  CARD 
CAGE 


8,192  x  8  BIT  STATIC  MEMORY 

Exceptionally  Low  Power 


UAUULUfO" 
JUUUUUJLIt 


FAST 

LOW  POWER 
BUFFERED 


PROTOTYPING  BOARD 
EXTENDER  CARD 
2K  RAM  /2K  ROM 
LOW  PROFILE  IC  SOCKETS 


Z80-  CPU 
16K  RAM 

EDGE  CONNECTORS 
DB25  CONNECTORS 


ELECTRONIC  CONTROL 
TECHNOLOGY 

P.O.  BOX  6,  UNION.  NEW  JERSEY  07083 


757  RETURN 

760  PRIN  T  "EXCHANGE   IS   1   0R  2  ",M9 

761  G0SUB  2000 

762  RETURN 

801   PRINT"EXPIRAT10N  M0NTH/    STRIKE/  C0ST/0PTI0N" 
805   INPUT  M6/  S6/  P6 

810  G0SUB  900;    REM  CHECK  F0R  ERR0RS' 
815   IF  E1>0  THEN  801 
820  RETURN 
900  E1=0 

903  06=S1/1OO;    REM   C0MPUTE  N0.0PTI0NS' 

906   IF  M6<1   THEN   G0SUB  955 

909   IF  M6>  12   THEN   G0SUB  955 

912   IF  S6<10  THEN  G0SUB  960 

915    IF   S6>300  THEN   G0SUB  960 

918    IF  P6<25  THEN   G0SUB  965 

930  RETURN 

955  PRINT"M0NTH  ERR0R  "/M6 

956  G0SUB  2000 

957  RETURN 

960  PRINT"STRIKE  <10   0R  >300"/S6 

961  G0SUB  2000 

962  RETURN 

965  PRINT"PRICE  <    125   "/ P6 

966  G0SUB  2000 

967  RETURN 

1001   T1=INT(06*1OO*S6>;    REM   C0MPUTE  PR0CEEDS   IF  CALLED' 

1005  T2= INT(06*P6>;   REM  C0MPUTE  0PTI0N  PR0CEEDS' 

1010   G0SUB   1101;    REM  C0MPUTE  DAYS   IN  LIFE  AND  i  0F  QTRS' 

1015  T3= INT(D1*S1*Q);REM  T0TAL  DIVIDEND  INC0ME' 

1020  T4=T1+T2+T3;    REM   C0MPUTE  T0TAL    INC0ME ' 

1025  RETURN 

1101   Y1=Y*365;    REM    C0MPUTE  DAYS   IN  LIFE* 
1105  D2=C(M)+D+Y1 

1110  D3  =C(M6)+20+Yl;  REM  ASSUME  0PTI0N  EXPIRES  0N  20TH  DAY' 
1115  D4=D3-D2 

1120    IF   D4<0   THEN  D4=D4+365 

1125   Q=INT< (D4/90)+. 5);    REM  C0MPUTE  QUARTERS  F0R  DIVIDENDS' 
1130  RETURN 

1201   C1  =  1NKS1*P1 );REM   C0MPUTE  T0TAL  C0ST' 
1205  C2=  INT(C1*M1  );  REM  C2   IS  0VIN  CAPITAL' 
1210  C3=C1-C2 

1215  M8=M9;    REM   M8    IS  MARKET   TYPE   F0R  BR0KERAGE  CALCULATI0N ' 

1220  X=C1 

1225  X1=S1/ 100 

1230   G0SUB    1401;    REM   C0MPUTE  BR0KERAGE  0N  SHARES' 
1235   B1=B;    REM   B   IS  RETURNED  VALUE  0F   BR0KERAGE  FEE* 
1240  X=T1 
124  5  X1=S1/ 100 

1250  G0SUB   140W   REM  C0MPUTE  BR0KERAGE  0N   SHARE  WHEN  CALLED* 
1255  B2=B 
1260  X»T2 
1265  Xl»06 

1270  M8=3;    REM  M8»3  MEANS  CB0E' 

1275  G0SUB    1401;    REM   C0MPUTE  BR0KERAGE  0N   0PTI0N  SALE' 
1280  B3=B 

1285   C4..C3-T2-T3  +  B1+B2  +  B3;    REM   C4    IS  NET   CAPITAL  B0RR0WED' 

1290  M2= INT< < <R/ 1 0 0 ) *C4 ) *D4/ 365 );    REM  MARGIN    INTEREST  C0ST' 

1291  IF  M 1  =  1   THEN  M2  =  0;   REM  N0  INTEREST' 

1292  C5  =  C2  +  C3+B1  +  B2  +  B3  +  M2;    REM   C5    IS  T0 TAL   C0  ST ' 
1295  RETURN 

1401    B= < CX*. 009)+22)+ (Xl*6);    REM  0LD   BR0KERAGE  FEES' 

1405    IF  M8=l    THEN   B=  INT  (B*.  7 ) ;    REM  NYSE  DISC0UNT' 

1410    IF  M8  =  2  THEN    B=Xl*2l;    REM  0TC  C0  5  T ' 

1415    IF  M8  =  3   THEN    B= INKB*. 82);    REM   CB0  E ' 

1420    IF  B<25   THEN    B=25;    REM   MINIMUM   BR0KERAGE ' 

1425  RETURN 

150  1   N1  =  T4-C5;    REM   C0MPUTE  PR0 FIT  AND  RATE  0F  RETURN ' 
1505   C6=C2-T2-T3+B1+B2+B3+M2;    REM   C6    IS  NET  CAPITAL' 
1510  Rl  =  INKCNl*1000)/C6)/  10 
1515   R2= 1NT(3650*R1/D4)/ 1 0 

1520   R3=  (INK  (Cl-N  1  )*100)/S1  )/ 100J    REM  L0VLR  BREAKEVEN' 
1525  RETURN 

1601   PRIN T"C0 VERED  WRITE  N0"/N9/M/D/Y 
1605  PRINT"BUY"/ SI/"    SHARES  AT"/ PI 

1610  PRINT"SELL"/06/ "     "/  M  (M6  )  /  S6/  "  '  S  AT  J"/P6/"EACH" 

1611  PRINT 

1614  W2=l 

1615  IF   Wl>60  THEN   V2= 1 .  9 

1616  PRINT  TAB(4*W2)/ "C0ST"/TAB< 13*W2)/ "PR0CEEDS"/ 

1617  PRINT  TAB(W2*24)/ "RETURN" 

1618  PRINT"Y0UR  S"/ C2/ TAB (W2* 12)/ 
1620  PRINT"ST0CK  "/ T I / TAB(W2*23 )/ "$"/ 
1622  PRINTN  1/ "0N" 

1624  PRINT"L0AN   J"/ C3/ TAB (W2* 12)/ 
1626  PRINT"0PT10N   "/ T2/ TAB ( W2*2 3 ) / 
1628  PRINTINT(C6)/"IS" 
1630  PRINT"BR0KER ' S"/ TAB(W2*12)/ 

1632  PRINT^'DIVIDEND^/TS/  TAB(W2*23)/  XZ  IX/  R1/"X"/  XX 
1634. PRINT"        IN        "/ B 1 / TAB (W2*2 3 ) / 
1636  PRINTD4/ "DAYS" 

1638  PRINT"     0UT       "/ B2/ TAB <W2*23 )/ 

1640  PRINT"  ="/  R2/  "X" 

1642   PRINT"  0PTI0N   "/ B3/ TAB(W2*23 )/ 

1644   PRINT"  ANNUALLY" 

1646  PRINT"MARG IN     "/M2/ TAB ( V2*23 ) / 

1648  PRINT"  BRK-EVEN" 

1649  PRINTTAB(6)/  "  "/  TABCW2*  12)/"   "/ TAB <W2*2 3 ) / 

1650  PRINT"  IS" 

1652  PRINT"T0TALS"/C5/TAB(W2*12)/ "  "/ T4/ TAB(W2*23 )/ 

1654  PRINT"  S"/ <INT(R3*10))/10 
1660  RETURN 
2000  E1»E1+1 
200  1  RETURN 


CIRCLE  INQUIRY  NO.  9 


38  INTERFACE  AGE 


FEBRUARY  1977 


MORE  iHEIRON  MAGIC!!! 


Now  .  .  .  the  already  tremendous  value  of  MERLIN,  the  best,  most  versatile  video  interface, 
is  an  even  greater  value  with  the  introduction  of  two  inexpensive  add-on  features. 


SUPER  DENSE  GRAPHICS 

$39.00 

320H  X  200V  RESOLUTION 


MERLIN'S  Super  Dense  Graphics  is  an  add-on  board 
which  mounts  directly  to  the  MERLIN  Video  Interface. 
Each  of  64,000  graphic  dots  is  individually  controllable 
and  located  on-screen.  The  kit  includes  a  manual  with 
X-Y  coordinate  transformation  software  listing. 


SOFTWARE  CASSETTE  I/O 

$29.00 

1500  BAUD 


MERLIN'S  Software  1500  Baud  Cassette  I/O  is  an 
external  add-on  to  the  MERLIN  Video  Interface.  It 
connects,  along  with  a  keyboard,  to  the  MERLIN  KYBD 
and  I/O  Port  through  a  16  conductor  flat  cable.  The  kit 
includes  a  manual  with  a  listing  of  all  necessary 
software,  also  available  as  part  of  the  MEI  ROM. 


For  more  information,  fast,  write  us  direct. 
Pricing: 

MERLIN  Assm   $349.00 

MBI  ROM/RAM    $  39.95 

Super  Dense  Add-on    $  39.00 


MERLIN  Manual  $  10.00 

MERLIN  Kit  $269.00 

MEI  ROM  $  34.95 

Cassette  I/O  Add-on  $  29.00 


Master  Charge  and  BankAmericard  accepted. 


MiniTerm  Associates,  inc, 


Box  268,  Bedford,  Mass.  01730  (617)  648-1200 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  14 


INTERFACE  AGE  39 


By  Tom  Mozur 

WARP  FACTORS 


Captain's  Log:  Star  Date  3814.  2: 
Quadrant  14-Z2  Sector  A-ll;  in  po- 
lar orbit  around  third  planet,  Tellian 
system... 


"and  all  corrections  have  been  made  in  the 
warp  mechanisms  at  this  remote  site.  Operations 
are  satisfactory  now.  Fortunately,  this  planet  is 
uninhabited  —  no  telling  how  much  havoc  the 
warp  forces  could  have  caused  to  organic  life." 

"I  close  this  entry  with  the  narrative  of  a  baffling 
discovery  we  made  just  before  beaming  up." 

"Kkkhh?  Archie?  Where  are  you?  Let's  go." 

"I  believe  Mr.  Tyson  is  inspecting  the  null  zone 
area  behind  the  flux  modulators,  Captain." 

"Aye,  Captain;  could  you  and  Mr.  Kkkhh  come  over 
here?  I've  found  something." 

"Okay,  Archie,  what  is  it?  Some  residual  temporal 
perturbation  still  in  the  area?" 

"No,  Captain,  nothing  like  that.  See  here,  in  the 
sand  —  some  kind  of  apparatus  that  is  not  a  part  of 
the  flux  modulators,  or  any  other  system  at  this  site." 

"Let's  have  a  look." 

"Well,  Mr.  Kkkhh,  any  ideas?" 

"Interesting,  Captain.  The  printed  text  on  this  ap- 
paratus appears  to  be  in  an  archaic  form  of  English." 

"H'mm,  yes,  I  see  what  you  mean.  Educator  two 
microcomputer  HEP  kit  by  Motorola,  if  I  interpret  cor- 
rectly." 

"Captain?" 

"Yes,  Mr.  Tyson?" 

"I've  scanned  engineering  references  in  the  ship's 
archives  many  times,  but  I've  na'  come  across  a  head- 
ing called  'microcomputer.'  " 

"Perhaps,  Mr.  Tyson,  you  did  not  access  the  refer- 
ences in  a  thorough  manner." 

"Your  ears!  Mr.  Kkkhh!" 

"Gentlemen!  Time  to  beam  up.  Bring  the  unit 
along,  we'll  have  Computer  do  an  analysis." 
"Computer." 
"Working." 

"Identify  the  purpose,  origin  and  age  of  this  unit." 

"Unit  is  a  microcomputer,  a  primitive  ancestor  of 
myself.  Point  of  origin,  Earth  circa  late  1900s,  Earth 
calendar.  Age,  less  than  thirty  days  old." 

"What?!!" 

"Easy,  Archie.  Computer: elaborate." 

"Unit  is  the  Educator  II,  a  stored-program,  general- 
purpose  digital  computer  kit  that  was  offered  by  the 
HEP/MRO  department  of  an  organization  known  as 


Motorola.  A  block  diagram  of  the  unit  is  contained  in 
my  memory  banks." 

"Computer,  display  the  diagram;  continue  the  de- 
scription." 

"Yes,  Captain.  The  unit  contains  M6800  micro- 
computer products.  Specifically,  a  HEP  C4801L 
microprocessing  unit  (MPU),  a  C4821L  Peripheral 
Interface  Adapter  (PIA)  and  a  C4811L  128x8  Ran- 
dom Access  Memory  (RAM).  There  are  provisions  on 
the  single  board  kit  for  another  128x8  RAM.  A  built- 
in  interface  allows  additional  user  programs  to  be 
stored  on  and  loaded  from  audio  cassette  tapes.  User 
programs  on  cassettes  may  be  accessed  and  loaded 
into  RAM  by  means  of  a  software  search  feature. 
Said  interface  and  search  features  are  routines  con- 
tained in  Programmable  Read  Only  Memories 
(PROMs)  on  the  board.  The  two  512x4  PROMs  also 
contain  an  executive  monitor  for  user/computer  inter- 
action by  means  of  front  panel  switches  and  a  light 
emitting  diode  (LED)  display.  A  clock  circuit,  running 
at  0.5  MHz,  is  also  on-board.  The  unit  is  self-con- 
tained; all  parts  are  included  as  well  as  a  complete 
construction  manual.  The  unit  requires  a  5  V,  1 .2  A 
power  source." 

"Computer,  what  other  modes  of  communication 
were  available  to  the  users  of  this  Educator  II?" 

"At  the  point  in  time  when  this  unit  was  intro- 
duced, Mr.  Kkkhh,  tactile/visual  interaction  was  in 
vogue.  Verbal  interaction  was  in  its  infancy." 

"Highly  interesting.  Computer,  how  was  this  tac- 
tile/visual communication  implemented?" 

"User/computer  dialogue  was  at  the  machine  code 
level  for  the  initial  Educator  II  kit.  Object  code 
patterns  were  set  by  means  of  eight  single  pole,  dou- 
ble throw  switches  (SPDT)  and  loaded,  examined  and 
modified  by  three  SPDT  momentary  switches.  Bytes 
of  code  were  displayed  on  eight  LEDs.  Subsequent 
Motorola  products  and  user  system  expansions  pro- 
duced highly  articulate  configurations." 

"Computer,  continue  with  the  description  of  the 
Educator  II. 

"Yes,  Captain.  Edge  connectors  on  the  board  pro- 
vide an  interface  to  the  PIA  as  well  as  all  address, 
data  and  control  bus  signals  for  system  expansion.  A 


40  INTERFACE  AGE 


FEBRUARY  1977 


At  technology  Level  8 
great  strides  were 
made  in  microcomputing 


row*  fK  T     A$t     tUt     f  O  feftj 


j  ir£  f    f  l  i  i  i  r  i-i- 


»  ■  '  »  '  i  ■  ' ■  i-  j-  i  l_LLL.i 


Educator  II  Microcomputer 


Do  those  aboard  the  ancient 
vessels  in  Space  know 
what  they  contributed? 


test-as-you-build  approach  provided  for  an  accurate, 
low-error  kit  construction.  Assembly  time  was  typi- 
cally one  Earth  evening.  A  complete  construction 
manual  as  well  as  a  full  complement  of  parts  helped 
to  hold  the  assembly  time  to  such  short  duration. 
Tutorial  support  documentation,  designed  as  aids  for 
understanding  MPUs  and  programming  concepts,  was 
also  included.  Shortly  after  Educator  N's  introduction, 
other  HEP  support  kits,  such  as  a  power  supply  and 
memory  boards,  were  also  introduced." 

"All  well  and  good,  but,  Captain,  we  still  ha'  one 
verrry  perplexin'  question:  How  can  something  from 
the  20th  century,  Earth,  cross  par-sees  of  space  and 
still  be  new?" 

"Yes,  Archie,  perplexing,  true;  but  not  entirely 
improbable,  eh,  Kkkhh?" 

"Quite  plausible,  Captain." 

"Computer,  state  the  particulars  of  Educator  N's 
introduction." 

"Educator  II  Microcomputer  Kit  introduced  March 
1977,  Earth  calendar.  Place  of  manufacture:  north- 
ern hemisphere  of  Earth,  in  the  country  then  known 
as  the  United  States  of  America,  in  the  State  then 
known  as  Arizona.  When  this  culture  reached  techno- 
logical Level  8,  this  manufacturer  identified  as  Motor- 
ola, Inc.  maintained  a  lead  in  the  design  and  appli- 
cation of  signal  technology." 

"Does  that  suggest  anything  to  you,  Mr.  Kkkhh?" 

"The  factors  are  favorable  .  .  .  simplicity,  economy, 
availability.  Yes,  given  such  a  potential  target  area, 
the  probability  of  exchange  would  indeed  be  high. 
There  is,  of  course,  only  one  way  to  enforce  this  hypo- 
thesis, Captain." 

"Do  the  honors,  Mr.  Kkkhh." 

"Computer." 

"Working." 

"Computer,  state  the  occurrence  and  periods  of 
spatial  alignments  of  Earth  and  Tellian  III  between 
January,  1977,  Earth  calendar,  and  Star  Date  3814.2. 
Specify  Star  Date." 

"Occurrence:  1977.5;  2995.84;  3814.13;  Period: 
35  Star  Hours  aligned,  140  Star  Hours  non-aligned. 
Fifty-two  pulses  per  occurrence." 

"H'mmm;  yes,  highly  probable,  Captain.  An  ex- 
change could  occur  again  at  a  conjugate  site." 

"Agreed  Archie,  take  this  Educator  II  and  beam  it 
down  to  the  location  that  is  diametrically  opposite  to 
the  location  at  which  you  found  it." 

"Uh,  aye,  Captain.  I  take  it  then  that  you  don't  want 
to  keep  this  Educator  II  in  ships  stores?" 

"Right,  Archie.  No  matter  how  this  micro- 
computer appeared  on  Tellian  III,  we  owe  the  ori- 
ginal owner  the  right  to  retrieve  it.  Who  knows  but 
that  this,  this  Educator  II  may  be  the  seed  bed  of 
ideas  that  led  to  our  computer." 

"Aye,  Captain." 

"Mr.  Ooll,  lay  in  a  course  to  Digitus  IV,  warp  factor 
five." 

"Aye,  aye,  Captain." 


FEBRUARY  1977 


INTERFACE  AGE  41 


Data  Address 
and  Control 
to  Edge 
Connector 


|  Optional  RAM  j 
|      128  bytes  j 

<  I 

 1  I  


ROM  Executive 
512  bytes 


PIA 

I/O 

Interrupt 


Function 
Switches 


42  INTERFACE  AGE  FEBRUARY  1977 


Apple  Introduces  the  First  Low  Cost  Microcomputer  System  with  a 
Video  Tenrrinal  and  8K  Bytes  of  RAM  on  a  Single  PC  Card. 


The  Apple  Computer.  A  truly  com- 
plete microcomputer  system  on  a 
single  PC  board.  Based  on  the  MOS 
Technology  6502  microprocessor,  the 
Apple  also  has  a  built-in  video  termi- 
nal and  sockets  for  8K  bytes  of  on- 
board RAM  memory.  With  the  addi- 
tion of  a  keyboard  and  video  monitor, 
you'll  have  an  extremely  powerful 
computer  system  that  can  be  used  for 
anything  from  developing  programs 
to  playing  games  or  running  BASIC. 

Combining  the  computer,  video 
terminal  and  dynamic  memory  on  a 
single  board  has  resulted  in  a  large 
reduction  in  chip  count,  which  means 
more  reliability  and  lowered  cost. 
Since  the  Apple  comes  fully  assem- 
bled, tested  &  burned-in  and  has  a 
complete  power  supply  on-board,  ini- 
tial set-up  is  essentially  "hassle  free" 
and  you  can  be  running  within  min- 
utes. At  $666.66  (including  4K 
bytes  RAM!)  it  opens  many  new 
possibilities  for  users  and  systems 
manufacturers. 

You  Don't  Need 

an  Expensive  Teletype. 

Using  the  built-in  video  terminal 
and  keyboard  interface,  you  avoid  all 
the  expense,  noise  and  maintenance 
associated  with  a  teletype.  And  the 
Apple  video  terminal  is  six  times 
faster  than  a  teletype,  which  means 
more  throughput  and  less  waiting. 
The  Apple  connects  directly  to  a 
video  monitor  (or  home  TV  with  an 
inexpensive  RF  modulator)  and  dis- 
plays 960  easy  to  read  characters  in  24 
rows  of  40  characters  per  line  with  au- 
tomatic scrolling.  The  video  display 
section  contains  its  own  IK  bytes  of 
memory,  so  all  the  RAM  memory  is 
available  for  user  programs.  And  the 


Keyboard  Interface  lets  you  use  al- 
most any  ASCII-encoded  keyboard. 

The  Apple  Computer  makes  it  pos- 
sible for  many  people  with  limited 
budgets  to  step  up  to  a  video  terminal 
as  an  I/O  device  for  their  computer. 

No  More  Switches, 
No  More  Lights. 

Compared  to  switches  and  LED's, 
a  video  terminal  can  display  vast 
amounts  of  information  simulta- 
neously. The  Apple  video  terminal 
can  display  the  contents  of  192  mem- 
ory locations  at  once  on  the  screen. 
And  the  firmware  in  PROMS  enables 
you  to  enter,  display  and  debug  pro- 
grams (all  in  hex)  from  the  keyboard, 
rendering  a  front  panel  unnecessary. 
The  firmware  also  allows  your  pro- 
grams to  print  characters  on  the  dis- 
play, and  since  youTl  be  looking  at 
letters  and  numbers  instead  of  just 
LED's,  the  door  is  open  to  all  kinds 
of  alphanumeric  software  (i.e., 
Games  and  BASIC). 

8K  Bytes  RAM  in  16  Chips! 

The  Apple  Computer  uses  the  new 
16-pin  4K  dynamic  memory  chips. 
They  are  faster  and  take  Vi  the  space 
and  power  of  even  the  low  power 
2102's  (the  memory  chip  that  every- 
one else  uses).  That  means  8K  bytes 
in  sixteen  chips.  It  also  means  no 
more  28  amp  power  supplies. 

The  system  is  fully  expandable  to 
65K  via  an  edge  connector  which  car- 
ries both  the  address  and  data  busses, 
power  supplies  and  all  timing  signals. 
All  dynamic  memory  refreshing  for 
both  on  and  off-board  memory  is 
done  automatically.  Also,  the  Apple 
Computer  can  be  upgraded  to  use  the 
16K  chips  when  they  become  availa- 


Byte  into  an  Apple 


ble.  That's  32K  bytes  on-board  RAM 
in  16  ICs — the  equivalent  of  256 
2102's! 

A  Little  Cassette  Board 
That  Works! 

Unlike  many  other  cassette  boards 
on  the  marketplace,  ours  works  every 
time.  It  plugs  directly  into  the  upright 
connector  on  the  main  board  and 
stands  only  2"  tall.  And  since  it  is 
very  fast  (1500  bits  per  second),  you 
can  read  or  write  4K  bytes  in  about 
20  seconds.  All  timing  is  done  in 
software,  which  results  in  crystal- 
controlled  accuracy  and  uniformity 
from  unit  to  unit. 

Unlike  some  other  cassette  inter- 
faces which  require  an  expensive  tape 
recorder,  the  Apple  Cassette  Inter- 
face works  reliably  with  almost  any 
audio-grade  cassette  recorder. 

Software: 

A  tape  of  APPLE  BASIC  is  includ- 
ed free  with  the  Cassette  Interface. 
Apple  Basic  features  immediate  error 
messages  and  fast  execution,  and  lets 
you  program  in  a  higher  level  lan- 
guage immediately  and  without 
added  cost.  Also  available  now  are  a 
dis-assembler  and  many  games,  with 
many  software  packages,  (including  a 
macro  assembler)  in  the  works.  And 
since  our  philosophy  is  to  provide 
software  for  our  machines  free  or  at 
minimal  cost,  you  won't  be  continu- 
ally paying  for  access  to  this  growing 
software  library. 

The  Apple  Computer  is  in  stock  at 
almost  all  major  computer  stores.  (If 
your  local  computer  store  doesn't 
carry  our  products,  encourage  them 
or  write  us  direct).  Dealer  inquiries 
invited. 

.  $666.66* 

eludes  4K  bytes  RAM 


COMPLETE 
VIDEO  TERMINAL 
ELECTRONICS  * 


LOW-PROFILE 
SOCKETS 
ON  ALL  ICS 


FIRMWARE  

IN  PROMS 


BREADBOARD 
AREA 

AmSBBSSSi 


CRYSTAL 
CONTROLLED 
TIMING 


f  y  y  y  mm  11  Utf* ! 


KEYBOARD 
INTERFACE 


6502 

MICROPROCESSOR 


4  FULLY  REGULATED 
POWER  SUPPLIES 


EXPANSION 
✓  CONNECTOR 


CASSETTE 
-  BOARD 
CONNECTOR 


8K  BYTES  RAM 


APPLE  Computer  Company  •  770  Welch  Rd.,  Palo  Alto,  CA  94304  •  (415)  326-4248 

FEBRUARY  1977  CIRCLE  INQUIRY  NO.  1  INTERFACE  AGE  43 


FLIP  OVER 
OUR  FLOPPY 

Only  $750 from  Peripheral  Vision. 


Peripheral  Vision  is  a  brand-new  company  that's  dedi- 
cated to  selling  reasonably  priced  peripherals  for  various 
manufacturers'  CPU's. 

We  think  you'll  flip  over  our  first  product. 

It's  a  full-size  floppy  disk  for  the  Altair-lmsai  plug-in 
compatible  S-100  BUS.  And  it's  available  for  as  low  as  $750. 

Here  are  the  features: 

•  1  interface  card  supports  4  drives 

•  Stores  over  300,000  bytes  per  floppy 

•  Bootstrap  EPROM  included — no  more  toggling  or 
paper  tape 

•  Completely  S-100  plug-in  compatible 

•  Interface  cabling  included 

•  Drive  is  from  Innovex  (the  originator  of  the  floppy 
concept) — assembled  and  tested 

•  Interface  card  design  is  licensed  from  Dr.  Kenneth 
Welles  and  the  Digital  Group 

•  Disk  operating  system  with  file  management  system 
included  on  floppy 

•  Cabinet  and  power  supply  optional 

Prices:  Kit  Assm. 
Interface  card  kit  and 

assembled  and  tested  drive  $750  $850 

Power  supply—  +24V  at  2A  45  65 

Cabinet — Optima,  blue  —  85 


Now,  a  little  more  about  our  company. 

Peripheral  Vision  may  be  brand-new,  but  we  have  some 
old-fashioned  ideas  about  how  to  run  our  business. 

We  know  there  are  serious  incompatibilities  among  the 


different  manufacturers'  peripherals  and  CPU's.  We  want  to 
get  them  together.  And,  we  want  to  bring  significant  new 
products  to  market — products  consisting  of  everything  from 
adaptation  instructions/kits  for  hardware  and  software  to 
major  new  products. 

It's  a  tall  order,  but  we  feel  we're  up  to  the  task. 
Peripheral  Vision  has  already  obtained  a  license  from 
The  Digital  Group  to  adapt  versions  of  some  of  their  prod- 
ucts to  the  S-100  BUS.  And  we're  working  on  getting  more 
from  other  companies. 

Most  important  to  our  customers,  Peripheral  Vision  is 
committed  to  helping  you  get  along  with  your  computer. 
We'll  do  all  we  can  to  make  it  easy. 

Write  us  now  for  all  the  information  on  our  company, 
our  philosophy  and  our  exciting  line  of  products.  And  be 
prepared  to  flip  over  all  of  it. 


RO.  Box  6267/ Denver.  Colorado  80206/(303]  733-1678 

Send  me  the  works,  and  I  just  might  flip  over  it! 

Name  


44  INTERFACE  AGE 


CIRCLE  INQUIRY  NO.  23 


FEBRUARY  1977 


BUILDING  A  12-BIT 

ANALOG  TO  DIGITAL 

CONVERTER  FOR 

REAL  TIME  PROBLEMS 


By  Roger  W  Brown 

In  order  to  make  your  computer  aware  of  its  en- 
vironment it  is  necessary  to  input  sensory  data  into  its 
memory.  Since  most  sensory  data  encountered  in  our 
environment  are  analog  in  nature  they  must  be 
converted  to  digital  value  before  the  computer  can  un- 
derstand them.  This  conversion  process  is 
accomplished  by  using  an  A/D  converter  as  an  inter- 
face between  your  computer  and  the  analog  signal 
supplied. 

The  heart  of  any  real  world  interface  is  an  analog  to 
digital  (A/D)  converter.  This  A/D  converter  functions  as 
a  translator  for  the  various  analog  stimuli  from  the  out- 
side world  converting  them  into  computer  code.  The 
analog  stimuli  are  first  converted  into  analog  voltages 
by  a  transducer,  such  as  a  temperature  module,  and 
then  input  to  the  A/D  converter  which  transforms  the 
analog  signal  into  its  respective  digital  value.  In  order 
to  minimize  cost,  additional  sensor  modules  may  be 
connected  to  a  multiplexer  board  to  allow  several  sen- 
sors to  share  the  same  A/D  converter.  Likewise,  the 
output  from  the  computer  may  be  converted  into  its 
analog  equivalent  by  a  digital  to  analog  (D/A)  con- 
verter. This  permits  the  computer  to  do  such  things  as 
drawing  plots,  or  displaying  graphics  on  an  os- 
cilloscope or  television  screen,  or  generating  a  com- 
puter voice  to  talk  to  you.  Many  outputs  may  be 
generated  at  the  same  time  by  using  one  D/A  con- 
verter and  another  multiplexer  board,  to  reverse  the 
above  multiplexer  procedure. 

The  A/D  converter  will  perform  the  actual  con- 
version of  the  analog  signal  into  a  binary  word,  for 
processing  by  the  computer.  The  larger  the  binary  word 
the  greater  the  resolution  and  the  more  accurately  the 
computer  will  be  informed  about  the  input  signal.  For 
example,  a  10  bit  A/D  converter  set  for  ±5  volt 
operation  has  512  steps  of  resolution  between  0  and  5 
volts  and  1024  steps  between  —5  and  +5  volts.  This 
amounts  to  a  resolution  of  better  then  0.010  volts  or 
1 0mV  per  step.  Consequently  a  1  2  bit  unit  would  have 
resolution  to  2mV.  The  resolution  of  the  A/D  converter 
best  suited  to  your  needs  will  depend  upon  your  par- 
ticular application.  However,  it  is  well  to  remember 
that  a  1  6  bit  unit  can  be  used  as  a  1 0  or  8  bit  A/D  con- 
verter when  less  resolution  and  greater  speed  are  re- 
quired, but  an  8  or  10  bit  unit  cannot  be  used  as  a  1  6 
bit  A/D  converter. 


Once  you  have  interfaced  your  computer  with  an 
A/D  and/or  a  D/A  converter  module  you  are  ready 
to  hook-up  the  external  sensors.  If  more  than  one  sen- 
sor for  an  A/D  converter  or  more  than  one  output  for  a 
D/A  converter  are  desired,  a  multiplexer  must  be 
interfaced  between  the  converter  module  and  the  out- 
side equipments. 

Uses  to  which  you  could  put  your  computer  requir- 
ing A/D  conversion  are  extremely  numerous  so  only  a 
few  are  given  here.  Your  computer  could  be  used 
around  the  house  to  provide  you  with  a  very 
sophisticated  fire,  smoke  or  intruder  alarm  system 
without  the  false  alarm  flaws  of  other  systems 
presently  on  the  market.  Or  it  can  be  used  to  monitor 
outside  weather  conditions  to  forewarn  of  the  pending 
dangers  from  water  pipes  and  car  radiators  freeze  up.  As 
an  external  temperature  monitor  using  wind  speed  and 
pressure  gauges  the  system  can  predict  local  weather 
conditions  for  you.  If  you  have  a  desire  for  privacy  or 
need  security  you  could  use  your  computer  to  scramble 
your  phone  communications.  In  the  garage  your  com- 
puter can  monitor  the  operating  systems  of  your  car. 
The  new  Volkswagens  have  a  connector  on  them 
specifically  for  this  purpose.  Auto  systems  such  as 
timing,  dwell,  combustion,  air  pressure,  engine  torque, 
cam  wear,  plug  and  wire  conditions,  etc.  can  be 
monitored  for  preventative  maintenance,  tune-ups,  and 
repairs.  If  you  do  much  boating  your  computer  can 
keep  track  of  your  speed,  time,  wind  and  water  speed. 
From  this  it  can  tell  you  your  position  at  any  time  and 
instruct  you  on  course  change  to  make  to  reach  a 
desired  target  in  the  least  amount  of  time,  taking  drift 
and  winds  into  account.  Tied  to  a  radio  receiver  it  can 
function  as  your  inertial  navigation  system  by  receiving 
and  processing  Loran  or  Navy  satellite  signals.  On- 
board it  could  also  serve  as  the  processing  center  for 
side  scan  sonar,  eliminating  the  costly  recording  and 
processing  equipment  now  in  use.  By  interfacing  a 
microphone  to  your  computer  it  could  be  taught  to  un- 
derstand voice  commands  and  with  the  addition  of  a 
speaker  it  could  even  talk  to  you.  With  the  new  MOS 
matrix  IC's  your  computer  could  be  given  sight  and 
used  to  monitor  any  room  in  your  house.  The  list  is 
endless  and  these  are  but  a  few  uses  shown  here. 
However,  to  provide  sight  and  sound  functions,  a  very 
large  memory  would  be  required. 


FEBRUARY  1977 


INTERFACE  AGE  45 


THE  LOGICAL  CHOICE-First  in  a  series 


Logic  Probe  1  is  a  compact,  enor- 
mously versatile  design,  test  and  trouble- 
shooting tool  for  all  types  of  digital 
applications.  By  simply  connecting  the 
clip  leads  to  the  circuit's  power  supply, 
setting  a  switch  to  the  proper  logic  family 
and  touching  the  probe  tip  to  the  node 
under  test,  you  get  an  instant  picture  of 
circuit  conditions. 

LP-1  's  unique  circuitry— which 
combines  the  functions  of  level  detector, 
pulse  detector,  pulse  stretcher  and 
memory— makes  one-shot,  low-rep-rate, 
narrow  pulses— nearly  impossible  to  see, 
even  with  a  fast  scope— easily  detectable 
and  visible.  HI  LED  indicates  logic  "1", 
LO  LED,  logic  "0",  and  all  pulse  transi- 
tions—positive and  negative  as  narrow 
as  50  nanoseconds— are  stretched  to  1/3 
second  and  displayed  on  the  PULSE  LED. 


By  setting  the  PULSE/MEMORY  switch 
to  MEMORY,  single-shot  events  as  well 
as  low-  rep-rate  events  can  be  stored 
indefinitely. 

While  high-frequency  (5-10MHz) 
signals  cause  the  "pulse"  LED  to  blink  at 
a  3Hz  rate,  there  is  an  additional  indica- 
tion with  unsymmetrical  pulses:  with  duty 
cycles  of  less  than  30%,  the  LO  LED  will 
light,  while  duty  cycles  over  70%  will 
light  the  HI  LED. 

In  all  modes,  high  input  impedance 
(100K)  virtually  eliminates  loading  prob- 
lems, and  impedance  is  constant  for  all 
states.  LP-1  also  features  over-voltage 
and  reverse-polarity  protection.  Housed 
in  a  rugged,  high-impact  plastic  case 
with  strain-relieved  power  cables,  it's 
built  to  provide  reliable  day-in,  day-out 
service  for  years  to  come. 


IONS  PULSE  LEO  BLINKS 


HI  LED  ON  .LO  LEO  DOES  NOT  RESPOND  TO  NARROW  PULSES 


n_n_[i 


LO  LED  ON;  HI  LED  DOES  NOT  RESPOND  TO  NARROW  PULSES 


CSC'S  MULTI-FAMILY  LOGIC  PROBE  1. 
AT  $44.95,  IT  DIGS  UP  A  LOT  OF  INFORMATION  WITHOUT 

BURYING  YOUR  BUDGET. 


HI/LO  LED's-Display  level 
(Hl-logic  "1",  LO-logic  "0") 
of  signal  activity  at  node- 
under  test 


PULSE  LED— Lets  you  know 
what's  going  on— and  off. 
Indicates  positive  and  nega- 
tive pulse  and  level  transi- 
tions. LP-1  stretches  pulses 
as  narrow  as  50  nano- 
seconds to  full  sec. 
(3Hz  pulse  rate) 


PULSE/MEMORY  Switch- 

PULSE  position  detects 
and  stretches  pulses  as  nar- 
row as  50  nanoseconds  to 
1/3  sec.  Switch  to  MEMORY 
and  it  stores  single  shot  and 
ow-rep-rate  events  indefi- 
nitely; HI/LO  LED's  remain 
active 


Non-corrosive  nickel- 
plated  probe  tip  and  clip 
leads— For  reliable  contacts 
and  maximum  life 


Logic  Family  Switch— 

TTL/DTL  or  CMOS  matches 
Logic  "1 "  and  "0"  levels, 
,  for  greater  versatility.  High 
Input  Impedance— 100K 
virtually  eliminates  circuit 
loading  problems  and  is 
constant  in  both  "0"  and 
"1"  states.  CMOS  position 
also  compatible  with  HTL, 
HiNILand  MOS  logic 


Protected— Features  built-in 
reverse  polarity  and  over- 
voltage  protection;  strain- 
relieved  power  cable 


CONTINENTAL  SPECIALTIES  CORPORATION 


EASY  DOES  IT 

44  Kendall  St .  Box  1942  New  Haven.  CT  06509 
TWX:  710-465-1227 

West  Coast  office:  Box  7809.  San  Francisco.  CA  94119 
TWX:  910-372-7992 

46  INTERFACE  AGE  . 


See  your  CSC  dealer  or  call  203-624-3103  (East  Coast)  or  415-421-8872  (West  Coast) 
9  AM  to  5  PM  local  time.  Major  credit  cards  accepted.  Add  $2.50  for  shipping  and 
handling  in  the  U.S.  and  Canada  on  direct  orders  of  $50.00  or  less;  $3.00  for  orders 
over  $50.00.  On  all  foreign  orders  add  15%  to  cover  shipping  and  handling. 

CIRCLE  INQUIRY  NO.  5  FEBRUARY  1977 


There  are  three  basic  types  of  A/D  converters: 
ramp,  successive  approximation  and  tracking.  First  in 
the  order  mentioned  is  the  ramp  converter  which  uses 
a  countup  method  of  conversion  and  is  best  suited  for 
very  slow  changing  data.  The  major  drawbacks  to  this 
type  of  converter  are  its  extremely  slow  speed  of  2 
clock  pulses  per  conversion  and  that  data  can  only  be 
taken  out  at  the  end  of  the  conversion  cycle.  The 
second  type  of  converter  is  the  successive  approxi- 
mation A/D.  This  type  is  the  most  expensive  as  it  re- 
quires additional  data  holding  circuits;  but  then  it  is  the 
fastest  type  of  converter  requiring  only  one  clock  cycle 
for  each  bit  of  resolution.  The  disadvantage  associated 
with  this  type  of  converter  other  than  high  cost  is  its 
method  of  only  sampling  the  input  signal  and  then 
making  a  quick  approximation  of  what  it  might  be. 
Since  the  input  signal  is  only  sampled  every  N  clock 
pulses  this  could  amount  to  considerable  error  when 
observing  very  fast  signals  without  a  tell-tale  error 
sign.  The  output  from  this  type  of  converter  is  only  true 
at  the  end  of  the  conversion  cycle.  These  types  of  con- 
verters are  easily  recognized  as  conversion  time  is 
always  specified  for  the  unit.  The  third  type  is  the 
tracking  A/D  converter.  This  unit  is  a  compromise 
between  the  first  two  types  of  converters.  Essentially 
this  type  locks  on  to  the  input  analog  signal  and  as  long 
as  the  slew  rate  of  the  loop  is  not  exceeded  the  digital 
output  will  equal  exactly  the  analog  input  to  the 
resolution  of  the  converter.  If  the  slew  rate  is  ex- 


ceeded, the  output  immediately  becomes  erratic  and 
warns  you  of  the  need  for  adjustment.  What  must  be 
done  to  observe  signals  that  are  faster  than  the  slew 
rate  of  the  converter  is  to  reduce  the  input  amplitude 
and  you  are  back  in  business  again  at  a  decreased 
resolution.  An  additional  advantage  of  the  tracking 
A/D  converter  over  the  other  two  types  discussed  here 
is  the  continuous  availability  of  data  at  the  output  of 
the  converter. 

This  project  will  discuss  the  construction  of  a  1 2-bit 
tracking  A/D  Converter.  The  entire  schematic  of  the 
converter  is  shown  in  Figure  1  and  the  schematic  for 
the  power  supply  is  shown  in  Figure  2. 

ABOUT  THE  CIRCUIT: 

An  analog  signal  is  presented  to  the  input  of  IC4  (on 
an  operational  amplifier).  This  signal  may  be  either  a 
D.C.  level  or  an  A.C.  signal.  IC4  is  used  as  in  input 
buffer  amplifier.  With  the  addition  of  one  poten- 
tiometer its  gain  may  be  made  variable,  or  with  two 
diodes,  its  gain  may  be  made  logarithmic.  These  circuit 
designs  are  available  in  application  notes  for  the  IC 
manufacturer.  The  output  of  IC4  drives  the  low  im- 
pedance input  of  a  comparator,  IC5.  C9  is  used  to 
reduce  the  effects  of  high  frequency  noise  on  the  out- 
put of  IC5,  that  may  be  present  on  the  input  signal.  IC5 
is  in  the  A/D  feedback  loop  which  consists  of  ICs  6 
through  14.  When  the  feedback  signal,  on  pin  #3  of 


CLOCK 


C1I  R19 


JC9 


\2 

13  a 


Figure  1.  12  Bit  A/D 


MSB 


to 

1 1 

fC13 

a 

R29 
J_  R30 


FEBRUARY  1977 


INTERFACE  AGE  47 


Figure  2.  I 

IC5,  is  greater  than  the  true  input  signal,  the  output 
goes  positive  reversing  the  up/down  counters,  IC9 
through  IC1  1 .  The  output  of  IC5  after  filtering  out  the 
switching  transients  through  R 1  8  and  C1  0,  goes  to  the 
input  of  IC6.  The  main  function  of  IC6  is  to  select 
either  IC5  for  the  feedback  path  or  an  optional  mul- 
tiplexer, the  theme  of  a  future  article.  In  the  present 
schematic  the  multiplexer  input  is  disabled.  The  output 
from  IC6  goes  into  IC7  along  with  the  clock  pulses 
from  IC8.  When  the  output  of  the  comparator  is  high 
so  is  the  output  of  IC6,  then  IC7  forces  the  up/down 
counters  to  count  down.  This  continues  until  the  com- 
parator output  goes  low,  at  which  time  IC7  causes  the 
counters'  to  count  up.  This  process  is  repeated  quite 
rapidly  as  the  clock  is  operating  at  about  10MHz.  The 
clock  pulses  are  generated  from  IC8  with  R19.  R20 
and  C 1 1  as  passive  feedback  elements  in  a  TTL  loop. 
These  could  be  replaced  by  a  crystal  if  a  specific 
operating  frequency  is  desired.  The  operations  of  the 
up/down  counters  are  used  to  exercise  the  two  6  bit 
D/A  converters  and  generate  the  binary  coding.  These 
two  D/As,  IC12  and  IC13,  are  the  heart  of  the  system. 
Each  converts  its  binary  input  to  an  equivalent  analog 
voltage.  The  analog  voltages  of  each  D/A  is  summed, 
using  different  weighting  functions  by  IC14.  C12  is 
used  to  remove  any  switching  noise  that  may  have 
reached  the  converters.  R25  is  used  to  adjust  the  max- 
imum input  voltage  range,  peak  to  peak.  R30  is  used 
for  adjusting  the  A/D  for  bipolar  or  biased  operations. 


>r  Supply 

The  output  of  IC14  is  returned  to  IC5  where  it  is 
compared  to  the  input  signal  and  the  cycle  starts  again. 

CONSTRUCTION 

Component  placement  is  not  critical.  Make  certain 
the  diodes  and  electrolytic  capacitors  are  properly 
connected  and  their  polarity  is  arrested.  Use  a  40  watt 
or  less  soldering  iron  with  fine  resin  core  solder.  Apply 
only  enough  heat  to  assure  a  good  connection.  All  of 
the  parts  are  standard  consumer  grade  parts.  With  the 
exception  of  R23  and  R24  none  of  the  parts  is  critical 
and  substitutions  may  be  made.  All  resistors  are  20% 
tolerance  and  all  capacitors  are  25  volts,  except  where 
noted.  For  the  IC's  I  would  recommend  the  use  of 
Molex  Soldercons  as  this  will  eliminate  the  possibility 
of  heat  damage.  The  power  supply  can  be  assembled 
on  the  same  PC  board  as  the  A/D,  thus  reducing  the 
number  of  interconnects.  The  inputs  and  outputs  may 
be  labeled  for  ease  of  identification.  This  can  be  done 
with  the  aid  of  one  of  the  inexpensive  label  makers  on 
the  market  today.  The  board  may  be  placed  inside  your 
computer  and  use  its  power  supply,  hence  reducing  the 
need  for  the  two  transformers  and  filters. 

SET-UP  AND  CHECK-OUT 

After  you  have  completed  the  assembly  and 
checked  all  the  regulated  voltages,  you  are  ready  to 


48  INTERFACE  AGE 


FEBRUARY  1977 


Subsystem  "B"  makes  the 
computer  you  already  have 
work  almost  as  well  as 
a  new  Sol -20. 


Add  it  now,  and  for  a  limited  time 

we'll  throw  in  a  new  module 

with  512  bytes 

of  preprogrammed  PROAA 

and  1024  bytes 

of  RAAA  memory  free! 

Processor  Technology's  Subsystem  "ET 
puts  together  the  major  system  elements  you  need 
to  get  your  Altair  or  IMSAI  up  and  running. 

You  get  both  RAM  and  PROM  memory, 
parallel,  serial,  cassette  and  video  display  inter- 
faces, and  software.  Software  includes  a  512 
byte  bootstrap  loader  program  so  you  can  load 
any  Processor  Technology  CUTS  ("Byte/Kansas 
City")  1200  BAUD  cassette  tapes.  Standardized 
subroutines  in  ROM,  similar  to  those  in  a  Sol 
personality  module,  are  used  by  many  Processor 
Technology  software  packages  to  improve 
program  efficiency.  You'll  find  you  rarely  need  to 
touch  your  front  panel  switches.  With  our 
Subsystem  kiET  you  are  up  and  running  as  soon 
as  you  turn  on  the  power. 


Subsystem  Model 

B55 

B95 

B175 

Total  memory 

provided  (bytes) 

5632 

9728 

17920 

Display  I/O 

VDM-1 

VDM-1 

VDM-1 

Parallel,  Serial  I/O 

3P+S 

3P+S 

3P+S 

Tape  Cassette  I/O 

CUTS 

CUTS 

CUTS 

Memory 

4KRA 

8KRA 

16KRA 

Price 

$594 

S730 

S964 

NOTE:  The  GPM  module  with  both  RAM  and  PROM 

is  included  FREE  in  all  the  above  subsystems.  The  GPM  kit 

is  S129  if  purchased  separately. 

The  ALS-8/ROM  chip  set  is  $159.  SIM-1  &  TXT-2/ROM 
add-on  set  is  $60  and  requires  both  GPM  and  ALS-8/ROM. 


Three  subsystems  are  available,  depending 
on  your  memory  requirements.  Each  Subsystem 
"ET  includes  five  S-100  bus  compatible  modules 
as  listed  below.  Each  is  dependent  upon  our  new 
GPM  module  (GPM  =  General  Purpose 
Memory)  which  provides  1024  bytes  of  low  power 
static  RAM  and  512  bytes  of  preprogrammed 
EPROM  as  well  as  space  for  up  to  8192  bytes 
more  of  ROM  or  2708  type  EPROM .  The  GPM 
module  accepts  the  new  ROM  version  of  our  well 
known  ALS-8  Editor/Assembler  software  package. 

With  Subsystem  "ET  you  have  guaranteed 
compatibility  with  all  Processor  Technology 
software  and  hardware  products. 

FEBRUARY  1977  CIRCLE  INQUIRY  NO.  26 


I  want  Subsystem  "B"  to  get  my  Altair  or 
lAASAI  up  and  running. 


□  Enclosed  is  a  check  for  5  

California  residents  add  sales  tax. 
No  shipping  charge. 

□  Mastercharge  # . 


(include  Interbank  No.  and 
expiration  date) 

□  Send  more  information 
Name  


I  want: 

□  B55at  $594 

□  B95  at  $730 

□  B175  at  $964 


Address . 
fiij 


.  State. 


6200  Hollis  Street,  Box  G 
Emeryville,  CA  94608  (415)  652-8080 


INTERFACE  AGE  49 


set-up  the  converter  for  real  time  operations.  The  set- 
up will  be  discussed  for  bipolar  operations  of  the  A/D. 
Other  biased  operations  would  be  set-up  similarly.  First 
ground  the  analog  input  to  IC4.  Then  adjust  R30  for  5 
volt  output  for  bipolar  operation,  zero  volts  with 
respect  to  circuit  ground,  for  positive  operation  only  or 
10  volts  for  negative  input  signals.  Place  a  voltmeter 
on  the  output  of  pin  #1 0  on  IC1  4 .  The  voltmeter  should 
read  zero  volts,  adjust  R30  until  it  reads  zero  volts, 
within  1/10  volts  or  so.  Adjust  R25  to  approximately 
1100  ohms  total  resistance.  Recheck  the  voltmeter 
and  adjust  R30  as  above.  Next,  apply  a  4-4  volt  DC 
voltage  to  the  analog  input  of  IC4.  Adjust  R25  until  the 
voltmeter  reads  4-4  volts.  Then  ground  the  input  and 
check  for  zero  volts.  If  within  20mV  proceed  otherwise 
"tweek"  R30.  Now  apply  a  —4  volt  DC  level  to  the 
input  and  check  the  voltmeter.  If  it  doesn't  indicate 
volts  try  reversing  the  leads;  if  it  still  doesn't  indicate 
—4  volts  adjust  R25  accordingly.  Repeat  the  zero 
check  again  and  your  A/D  should  be  ready  to  go. 

If  you  have  an  oscilloscope  connect  it  to  pin  #1  0  of 
IC14  and  apply  an  approximate  100  Hz  sine  wave 
signal  with  an  8  volt  peak  to  peak  level  to  the  analog 
input.  The  scope  will  trace  out  the  reconstructed  input 
signal.  Now  slowly  increase  the  frequency  until  the 
trace  breaks,  (see  Figure  3).  This  is  the  maximum  fre- 


quency sine  wave  signal  that  your  unit  can  track  for  an 
8  volt  input  signal.  If  you  reduce  the  signal  to  1  volt 
and  repeat  this  you  will  find  the  trace  now  tracks  until 
the  frequency  has  been  increased  to  eight  times  what 
is  observed  for  the  8  volt  signal.  For  a  12  MHz  clock 
the  A/D  can  track  a  1  100  Hz  sine  wave  signal  and  the 
settling  time  to  1  2  bits  is  less  then  3  microseconds.  As 
adjusted  this  1  2  bit  A/D  offers  resolution  steps  of  1 .22 
MV  per  bit  for  5  volt  bipolar  operation.  R25  is  used  to 
set  the  full  scale  voltage  level.  If  its  resistance  is  set  to 
about  2200  ohms  instead  of  1  100  ohms,  as  adjusted 
above,  the  unit  will  have  a  resolution  of  0.625  mV  per 
step  but  will  only  accept  signals  that  deviate  less  then 
2.5  volts  about  ground. 

This  circuit,  as  can  be  seen,  offers  quite  a  bit  of 
flexibility  in  its  design  and  operation.  Its  operation  may 
be  optimized  to  accommodate  virtually  any  type  of  in- 
put signal.  In  addition  if  desired  its  clock  and  operations 
may  be  synchronized  with  an  external  clock.  After  you 
have  interfaced  this  converter  with  your  computer,  by 
simply  connecting  the  12  digital  bits  to  the  parallel 
input,  you  are  ready  to  hook-up  a  sensor  and  do  some 
real  time  processing.  Future  articles  will  describe  a 
multiplexer  module  and  various  sensor  modules  to  be 
used  with  your  A/D. 


Normal  Operation 


Comparator  Input 
Analog  Input 
Reconstructed  Analog  Input 


Slew  Rate  Limiting 


Comparator  Input 
Analog  Input 
Reconstructed  Analog  Input 


Input  Over-range 


Comparator  Input 
Analog  Input 
Reconstructed  Analog  Input 


50  INTERFACE  AGE 


FEBRUARY  1977 


Versatility 

CEI/Custom  Keyboards 

have  it 


What  goes  on  these  keys  is  up  to  you 


Our  aim  or  CEI  is  ro  provide  you  the  hobbiest,  with 
o  keyboard  system  rhor  con  perform  any  task  you  could 
possibly  demand.  Diode  encoding  coupled  with  one 
switch  register  encoded  key  allows  complete  latitude 
in  key  definition.  Doth  positive  and  negative  going 
strobes  are  provided  for  interfacing.  Visual  indication  of 
keyboard  status  is  provided  by  22  LED's,  1 3  of  which  can 
have  user  defined  meaning.  Shift  and  shift  lock  are 
provided 


Unliminted  versatility  w/ 1 00  Keys 

90  are  encoded  off  of  a       Diode  encoding  allows  a 


diode  matrix  and  are 

fully  user  defined. 

1  -  is  encoded  by  an  8 

switch  register  to  allow 

easy  redefination 

1  -  on  board  reset  key 

FEBRUARY  1977 


multitude  of  encoding 
techniques.  ECIBIC, 
ASCII,  BAUDOT,  RADIX 
50,  FIELDATA  or  codes 
of  your  own  design. 
Complete  documentation 

CIRCLE  INQUIRY  NO.  4 


Computer  Electronics  Inc. 
37433  Centralmont  Place 
Fremont  Calif.  94536 
Phone  (415)  796-5760 

□  Send  KD3A  Kit.  Supplied 

with  all  switches,  diodes,  PC 
board,  TTL-ICs,  +5v.  regulator, 
connecting  ribbon  cable  $95.95 

□  Send  KD3D  Kit.  Same  as 

above  except  without  diodes, 
TTL-ICs,  +  5v.  regulator  6 
ribbon  cable.  $49.95 

□  Case  for  above  $29.95 

NAME  

ADDRESS   

CITY/STATE/ZIP  

NOTE:  Calif,  residents  add 
6%  sales  tax 

INTERFACE  AGE  51 


Resistors  —  10%  carbon.  V&W  unless  marked 


No. 


ohms. 


No. 


ohms. 


No. 


ohms. 


R1 
R2 
R3 
R4 
R5 
R6 
R7 
R8 
R9 
R10 


270 
12@  5W 

3.6K 

5.4K 
12. 3K 
27 
150 

3.6K 

4.6K 

5.1K 


R11 
R12 
R13 
R14 
R15 
R16 
R17 
R18 
R19 
R20 


220  2W 

3.6K 

3.6K 

3.8K 

2.8K 

1.1M 
22K 

1.5K 
20 
200 


R21  220 

R22  220 

R23  16.8K  1% 

R24  1.05K1% 

R25  5K  trimpot 

R26  22K 

R27  51 K 

R28  51 K 

R29  51 K 

R30  10K  trimpot 


Capacitors: 

No. 

Specs 

C1.  C3.  C4 

1000  mF  (a 

C2,  C5 

.01  mF 

C6.  C7,  C8 

.001  mF 

*C9 

560  pF 

#C10,  C11 

100  pF 

C12 

1000  pF 

IC1,  IC2,  IC3 

#723 

IC4 

#741 

IC5 

#710 

IC6,  IC7,  IC8 

#7400 

IC9.  IC10.  IC1  1 

#74193 

IC12,  IC13 

#DAC-01 

IC14 

#747 

T1  secondary  8V  to  12V  @  1A 
T2     secondary  24V  (ct)  %  at  1A 

CR1.  CR2.  CR3.  CR4,  CR5.  CR6     1N  4006 
CR7  1N  967 

Q1.  02.  Q3  2N  3741 

Misc. 

P.C.  Vector  Board  4 "x9" 
Line  Cord 
On/Oft  switch 
Chassis  box  6"x1 0"x13'/2" 
Hook-up  wire,  solder,  etc. 
Parallel  interface  connector 

Note;  All  of  the  parts  excluding  the  misc.  parts  and  trans-  Board  is  also  available  from  this  source  for  $18.00.  A  P.C. 
formers  are  available  in  kit  form  for  $1  19.50  from  Scientific  Board  plug  compatible  with  the  Altair  8800  is  available  for 
Research  Inst.;  P.O.  Box  83;  Marcy.  NY  13403.  The  P.C.  $21.60. 

'These  parts  may  be  hand  picked  for  optimum  performance. 


IN  WIRE- WRAPPING  (o|c)  HAS  THE  LIME.. 

HOBBY- WRAP-30  WIRE-WRAPPING,  STRIPPING,  UNWRAPPING  TOOL  FOR  AWG  30  (-025  SQUARE  POST) 


STRIP 


WRAP 


UNWRAP 


OH  MACHINE  &  TOOL  4  Oitl'OitA  TiO\ 

J4&J,  CONbEB  SinteT,  UftOHH,  h£w  YORK,  M.t  I047A  U  fl  A  *  *»HOh£  1 2 ■  2 j  »4  »6^a 
TEtPt;  125091  TELEX;  232iW 


52  INTERFACE  AGE 


CIRCLE  INQUIRY  NO.  20 


FEBRUARY  1977 


The  new  generation 
of  Diskette  Drives  is  here 
and  under  control. 


PerSci  has  it- a  family  of  diskette  drives 
"design-years"  ahead  of  competitive  drives -now 
available  in  complete  low  cost  sub- 
systems for  interface  to  8080, 
6800  and  other  major  micro 
processors. 

The  Highest 
Performance 
Diskette  Drives: 

PerSci  diskette  drives, 
both  single  and  dual 
head  units,  offer  a  com- 
bination of  performance 
features  unique  in  the 
marketplace  while  still 
maintaining  compatibility 
in  existing  systems: 

□  Voice  coil  positioning 
for  access  speeds 
seven  times  fast* 
than  competitive 
(76  tracks  in  100 

□  A  low  power  all  system 
reduces  cost  and  assures  high 
reliability 

□  Automatic  electric  loading  simpli- 
fies operation  and  protects  media 

□  Small  size  permits  5  single 
drives  or  4  dual  drives  to  be 
mounted  vertically  in  a  19  in.  rack 

The  Most  Powerful 
Diskette  Drive  Controller 

The  PerSci  Model  1070  Diskette 
Drive  Controller  puts  the  advanced 
performance  of  PerSci  drives  to 
work  in  microprocessor  based 
systems.  An  IBM  format  com- 
patible, "intelligent"  controller, 
the  Model  1070  will  handle 
from  1-4  drives  with  minimum 
demand  on  the  host  system. 


In  fact,  with  addition  of  a  power  supply  and 
keyboard  to  the  PerSci  subsystem,  the  user  can 

perform  many  floppy  disk 
routines  without  additional 
hardware  or  software. 
Controller  features  include: 
□  Interface  to  most  micro- 
processors including  8080, 
6800  &  Z80 

□  Internal  disk  operating 
software  including  IBM 

formatting 

□  RS232  interface  option 
□  Rom  options  allowing 

copy  data  transfer  between 
diskettes  and  data  transfer 
between  RS232  interface  and 

diskette 

An  Economical  Diskette 
Drive  Subsystem 

A  complete  subsystem  including  a 
single  diskette  drive  (Model  70),  the 
Model  1070  controller  with  interface  and 
_  -  -  \    a  controller-to-disk-drive  cable  is  available 
in  single  units  for  $1,195.  For  double 
capacity,  a  dual  diskette  drive  (Model 
270)  subsystem  is  available  for  $1,495. 

OEM  discounts  available. 
Don't  settle  for  yesterdays  diskette 
drive.  Get  the  new  generation 
under  control  from  PerSci, 
4087  Glencoe  Avenue, 
Marina  Del  Rey,  CA  90291 
(213)  822-7545. 


PerSci 

1 

Peripherals  a 
Generation  Ahead. 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  24 


INTERFACE  AGE  53 


II 


>TM 


MICROCOMPUTING  FOR  HOME  AND  THE  SMALL  BUSINESSMAN 


The  professional  publication  bringing  microcomputing  technology  to  the  hobbyist,  small  businessman,  educator, 
engineer  and  student.  Every  issue  edited  to  bring  technology  and  people  together  in  the  simplest  manner. 


INTERFACE  AGE  is  packed  with 


HARDWARE  ARTICLES  —  Product  profiles,  comparisons, 
applications,  modifications  and  construction  pro- 
jects. 

SOFTWARE  ARTICLES  —  Microcomputer  development 
software,  short  software  routines,  application 
software,  off-line  software  storage  formats,  software 
communication  standards  and  access  to  the 
microcomputer  software  depository  for  all  INTER- 
FACE AGE  readers. 

TUTORIALS  —  Fundamentals  of  micro  processors,  basics  for 
microcomputing,  professional  to  technical  transition 
information,  understanding  software,  elementary 
math  for  computing. 

•  NEW  PRODUCTS  —  Manufacturer  profiles  and  latest 
product  releases. 

USER  COMMUNICATION  -  UPDATE  -  devoted  to 
club  and  organization  announcements 
and  activities.  —  LETTERS  TO  THE 

EDITOR  —  Reader  forum  for  expression 
of  opinions  and  feedback  on  articles  and 
features. 

MICRO-MARKET/FIFO  FLEA  MARKET  -  Low  cost/no 
cost  advertising  for  the  new 
marketeer/garage  sale  enthusiast. 


If  you  need  to  know  how  to  get  started  in  microcomputing  or  need  the  valuable  software  once 
your  system  is  completed  then  INTERFACE  AGE  is  a  must  for  you. 

Don't  Delay  —  Subscribe  Today! 

i  1 

1  INTERFACE  AGE  MAGAZINE  1 

P.O.  Box  1234  12  Monthly  Issues: 

1       Cerritos,  CA.  90701  $10  U.S.,  $12  Can./Mex.,  I 

I  $18  International  , 


□    CHECK  □    MONEY  ORDER 


Name 


Address- 


City   _  „  ,_   State  Zip  

I  Country  

MAKE  CHECK  PAYABLE  TO:  INTERFACE  AGE  MAGAZINE 

54  INTERFACE  AGE  FEBRUARY  1977 


:or  most  people  the  Z-80  chip  signaled 
he  start  of  another  learning  curve  in 
nicroprocessor  technology  while  others 
mjoyed  the  start  of  a  whole  new  micro- 
omputer  revolution 


CARD  OF  THE  MONTH  THE  TDL  ZPU 


By  Roger  Edelson,  Hardware  Editor 

To  be  fair,  this  article  should  have  run  before  my 
discussion  of  the  other  available  S-100  bus  compat- 
ible Z-80  CPU  card.  The  reason  is  simple:  TDL  (Tech- 
nical Design  Labs)  were  out  first  with  their  Z-80  CPU 
board.  So  this  month  I  will  cover  the  Z-80  CPU  card 
from  TDL.  I  don't  know  which  company,  TDL  or  Sony 
owns  the  rights  to  the  name  ZPU,  nor  is  my  intention 
to  compare  the  two  boards,  rather  to  confine  myself  to 
a  discussion  of  the  TDL  entry.  I  must  say,  however, 
that  either  board  would  be  a  worthwhile  addition  to 
your  computer. 

Let  us  take  a  look  at  the  TDL  ZPU™  kit  before  we 
cover  operation  and  design.  The  kit  is  particularly  easy 
to  build.  My  son  who  is  fourteen  years  of  age  took 
about  three  hours  -  with  time  off  for  ice  cream.  The 
board  worked  the  first  time  out.  Assembly  instructions 
are  excellent,  but  please  read  the  paragraph  on  the 
identification  of  the  electrolytic  capacitor  lead  polarity. 
One  of  the  capacitors,  C  20,  is  very  strange.  It  has  a 
single  big  black  dot  located  in  the  middle  of  the  two 
leads.  When  the  dot  faces  you,  the  right  lead  is  the 
positive  one.  Further  on  this  subject,  let  me  voice  a 
minor  gripe:  the  capacitor  is  not  shown  on  the  sche- 
matic diagram.  In  fact  none  of  the  regulator  com- 
ponents is  shown.  This  makes  troubleshooting  this 
area  somewhat  difficult.  I  hope  TDL  redraws  their 
schematic  to  include  these  components. 

The  printed  circuit  board  is  high  quality  with  gold- 
plated  edge-connector  pins.  Sockets  are  provided  for  all 
integrated  circuits.  A  nice  touch  is  the  numbering  of 
every  tenth  pin  on  the  front  of  the  board.  The  solder 
masking  is  generally  adequate,  but  there  were  some 


outages  on  the  board  front.  Where  these  occurred 
under  a  silk-screened  component  identification,  the 
printing  did  not  take.  It  is  then  difficult  to  read  the  com- 
ponent identification.  With  mine  most  of  the  resistor 
numbers  on  the  left  side  of  the  board  vanished  and 
some  identification  on  the  top  was  also  lost.  That  was 
a  minor  problem,  but  does  not  detract  from  the  board's 
construction  nor  use. 

The  assembly  of  the  board  is  straightforward  and 
easy.  The  assembly  instructions  contain  a  particularly 
good  section  on  the  proper  procedure  for  board 
cleaning.  The  card  is  designed  to  be  compatible  with 
the  S-100  bus  structure  or  the  Altair/IMSAI  front 
panel  interconnection.  Separate  jacks  are  provided  to 
accommodate  the  front  panel  connectors  of  either 
computer,  and  the  ZPU  user  may  elect  to  install  either 
one  or  both  during  assembly. 

Now  let  us  take  a  look  at  the  general  board  design 
and  the  specific  features  provided  by  TDL.  As  stated 
previously,  the  TDL  ZPU  '*  is  S-100  bus  compatible.  In 
order  to  maintain  this  compatibility  the  ZPU  must  gen- 
erate a  number  of  bus  signals  not  normally  produced 
by  the  Z-80.  The  ZPU  card  produces  these  signals  by 
logical  interaction  and  gating  of  the  Z-80's  status 
signals  and  the  clock  lines. 

The  most  important  status  generated  by  the  Z-80  are: 

1 .  Memory  request 

2.  I/O  Request 

3.  Read 

4.  Write 

5.  M1 


FEBRUARY  1977 


INTERFACE  AGE  55 


The  five  signals,  properly  gated,  are  used  in  con- 
junction with  the  clock  to  generate  all  of  the  required 
control  timing.  To  follow  the  description  of  the  logical 
design  of  the  ZPU,  please  refer  to  the  schematic  of  the 
ZPU  card  shown  on  Figure  1. 

The  Z-80,  unlike  the  8080,  outputs  continuous 
status  information  whereas  the  8080  information  is 
strobed  into  an  8  bit  latch  (usually  an  8212)  during 
"Sync"time.  Consequently,  the  Z-80  generates  no  sync 
pulse.  In  order  to  retain  the  Altair  Bus  structure,  a 
"psuedo-sync  pulse"  was  created. 

Specifically,  PSYNC  is  generated  by  gating  I/O  re- 
quest and  memory  request  thru  a  NAND  gate  (IC21) 
whose  output  goes  to  the  input  of  a  74LS74  (IC16) 
which  is  clocked  by  the  Phase  2  signal.  PSYNC  is  taken 
off  of  the  Q  of  IC16. 

A  wait  is  accomplished  by  gating  the  PRDY  signal 
and  forcing  a  low  into  the  wait  control  line  of  the  Z-80. 
In  addition,  an  extra  PRDY  line  has  been  made  avail- 
able which  may  be  jumpered  to  any  unused  bus  line  for 


future  applications.  When  not  in  use  these  lines  should 
be  jumpered  together,  (pins  #  3  and  #5  of  I C 1 7)  The 
wait  signal  is  initiated  by  the  coincidence  of  the  clock 
pulse  with  the  pulling  down  of  any  of  the  3  ready  lines 
(PRDY,  XRDY.  LRDY). 

The  interrupts  enabled  flag  is  not  provided  on  the  Z- 
80.  This  has  been  simulated  by  the  use  of  an  8  input 
NAND  gate  (IC14)  and  some  decode  gating  (IC17) 
feeding  a  set-reset  flip  flop  ( I C 1 8)  to  provide  the  user 
with  a  proper  indication  when  the  interrupts  are 
enabled. 

The  interrupt  pin  of  the  Z-80  is  handled  in  exactly 
the  same  fashion  as  that  of  the  8080,  coming  to  the 
same  bus  pin.  However,  the  non-maskable  interrupt 
pin  of  the  Z-80,  which  represents  a  significant  feature 
of  the  Z-80  is  brought  out  to  a  pull-up  resistor,  and  may 
be  jumpered  to  pin  #4  on  the  bus,  VI0,  the  highest 
priority  interrupt  line.  Thus  configuring  the  Z-80  into 
the  Altair  Bus  does  not  detract  from  this  Z-80  feature. 

The  SSTACK  status  signal  of  the  8080  is  not  gener- 


°o  I 


IC3      ^     IC4      ^     ICS      w  ICS 

COPYRIGHT  1976  by  TECHNICAL  DESIGN  LABS  INC. 


JDL 


18  20  22  24  26  28  30  32  34  36  38  40  42  44  46  48  50 
68    70    72    74    76    78    80    82    84    86    88    90    92    94    96    98  100 


By  Courtesy  and  permission  of  TDL 


56  INTERFACE  AGE 


FEBRUARY  1977 


IF  YOU'RE  STILL  PLAYING  GAMES 
IT'S  BECAUSE  YOU  HAVEN'T  SEEN 
OUR  SOFTWARE  LIBRARY 


VOLUME  ONE 

Part  1 

BOOKKEEPING 
Bond 
Building 
Compound 
Cyclic 
Decision  1 
Decision  2 
Depreciation 
Efficient 
Flow 

Installment 

Interest 

Investments 

Mortgage 

Optimize 

Order 

Pert  Tree 

Rate 

Returnl 

Return  2 

Schedule  1 

Part  2 

GAMES 

Animals  Four 

Astronaut 

Bagel 

Bio  Cycle 

Cannons 

Checkers 

Craps 

Dogfight 

Golf 

Judy 

Line  Up 

Pony 

Roulette 

Sky  Diver 

Tank 

Teach  Me 

PICTURES 

A.  Newman 

J.F.K. 

Linus 

Ms.  Santa 

Nixon 

Noel  Noel 

Nude 

Peace 

Policeman 

Santa's  Sleigh 

Snoopy 

Virgin 

VOLUME  TWO 

Part  3 

MATH  &  ENGINEERING 

Beam 

Conv. 

Filter 

Fit 

Integration  1 
Integration  2 
Intensity 
Lola 
Macro 
Max.  Min. 
Navaid 
Optical 
Planet 
PSD 
Rand  1 
Rand  2 


This  BASIC  SOFTWARE  LIBRARY  is  a  complete  do  it  yourself  kit. 
Written  in  everybodys  BASIC  immediately  executable  in  ANY  computer 
with  at  least  4K,  no  other  peripherals  needed.  Over  1000  pages  of  source 
codes,  descriptions  and  instructions. 

*  *  Also  available  at  most  computer  stores  *  * 

This  library  is  the  most  comprehensive  work  done  of  its  kind  to  date.  There  are 
other  software  books  on  the  market  today  but  they  are  dedicated  to  computer 
games.  The  intention  of  this  work  is  to  allow  the  average  individual  the  capability  to 
easily  perform  useful  and  productive  tasks  with  a  computer.  All  of  the  programs 
contained  within  this  Library  have  been  thoroughly  tested  and  executed  on  several 
systems.  Included  with  each  program  is  a  description  of  the  program,  a  list  of 
potential  users,  instructions  for  execution  and  possible  limitations  that  may  arise 
when  running  it  on  various  systems.  Listed  in  the  limitations  section  is  the  amount 
of  memory  that  is  required  to  store  and  execute  the  program  in  K  Bytes. 

Your  Library  la  Waiting 

The  much  requested  Volumes  III  &  IV  are  ready.  If  you  already  have  Volumes  I 
and  II  you'll  want  to  add  these  to  your  set.  With  the  addition  of  Volume  IV  there  is 
no  reason  why  anyone  who  even  THINKS  of  using  a  computer  can't  own  their  own 
SOFTWARE  LIBRARY.  You  can  start  yours  for  less  than  $10  plus  postage  and 
handling.  These  programs  are  IMMEDIA  TEL  Y  executable  in  ANY  computer  with  at 
least  4K.  The  entire  Library  is  1000  pages  long,  chocked  Full  of  Program  source 
code,  instructions,  conversions,  memory  requirements,  examples  and  much 
more.  ALL  are  written  in  compatibleBASlC  executable  in  4K  MITS,  SPHERE,  IMS, 
SWTPC,  PDP,  etc.  BASIC  compilers  available  for  8080  &  6800  under  $10 
elsewhere. 


VOLUME  I  & 
VOLUME  III 
VOLUME  IV 


—  $24.95  each 

—  $39.95  each 

—  $  9.95  each 


add  $1.50  per  volume  for  postage  and  handling.  10%  discounts  on  purchases  of 
any  three  (3)  volumes. 

Volume  discounts  are  available  to  qualified  users  &  dealers. 

Personal  checks  —  allow  4  weeks  for  shipping.  Pricing  subject  to  change  without 
notice.  If  air  mail  shipping  desired  add  $3  per  volume  to  price,  Continental  U.S. 
only.  Foreign  orders  add  $8foreach  volume. 

£J)  SCIENTIFIC  RESEARCH 

1712-1    FARMINGTON  COURT 
CROFTON,  MD  21114 


PHONES  ORDERS  CALL 

(800)  638-9194 


INFORMATION  and  MARYLAND  RESIDENTS 
CALL  (301)  721-1148 


{Volume  2  gon'tj 
Solve 

Sphere  Trian 
Stars 
Track 
Triangle 
Variable 
Vector 

Part  4 

PLOTTING  &  STAT 

Binomial 

Chi-Sq. 

Coeff 

Confidence  1 

Confidence  2 

Correlations 

Curve 

Differences 

Dual  Plot 

Exp  Distri 

Least  Squares 

Paired 

Plot 

Plotpts 

Polynomial  Fit 
Regression 
Stat  1 
Stat  2 

T-Distribution 
Unpaired 
Variance  1 
Variance  2 
XY 

APPENDIX  A 

BASIC  STATEMENT  DEF 

VOLUME  THREE 

Part  5 

ADVANCED  BUSINESS 

Billing 

Inventory 

Payroll 

Risk 

Schedule  2 
Shipping 
Stocks 
Switch 

VOLUME  FOUR 

GENERAL  PURPOSE 

PROGRAMS 
Bingo 
Bonds 
Bull 

Enterprise 

Football 

Funds  1 

Funds  2 

Go-Moku 

Jack 

Life 

Loans 

Mazes 

Poker 

Popul 

Profits 

Qubic 

Rates 

Retire 

Savings 

SBA 

Tic-Tac-Toe 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  53 


INTERFACE  AGE  57 


yyyyy yyyyy 


uuuuuo 


r 


Dumb  vs.  Smart 


It  isn't  exactly  a  fair  contest. 
Their  ADM- 3  CRT  terminal  kit  against  our 
IQ  120, 

While  they  may  have  some  good  reasons  for 
calling  theirs  dumb,  we've  got  many  good  reasons 
for  calling  ours  smart. 

For  instance,  the  IQ  1 20  gives  you  upline, 
tab,  home,  and  absolute  cursor  control— in 
addition  to  the  usual  forespace,  backspace,  down- 
line, new  line  and  return. 

And  besides  full  or  half  duplex  conversation 
mode,  IQ  120  provides  block  mode  so  you  can 
transmit  a  line  or  a  page  at  a  time. 

Of  the  two,  only  IQ  120  has  field  protection  to 
prevent  inadvertent  overtyping  of  designated 
information. 

Plus  an  autorepeat  feature  that  lets  you  repeat 
a  character  over  and  over  without  typing  it  over 
and  over. 

What's  more,  the  IQ  120  comes  with  73  keys 
instead  of  59,  including  a  numeric  pad.  And  it  has 
15  switch  selectable  baud  rates  instead  of  11. 

Other  than  that,  they're  pretty  evenly  matched. 

Each  has  a  12"  CRT  with  80  X  12  format 
and  a  capability  of  80  X  24,  64  ASCII  set  standard, 
and  R&232  interface. 

At  only  $995,  the  smart  money  is  on  IQ  1 20, 

Contact  SOROC  Technology  Inc.,  3074  E. 
Mirafoma  Ave.,  Anaheim,  CA  92806.  Phone  {714) 
630-2232,  or  one  of  their  authorized  distributors. 

Calif,  residents  include  6%  sales  tax. 
Terms:   FOB  origin. 


TECHNOLOGY,  INC, 


FEBRUARY  1977 


CIRCLE  INQUIRY  N0.  30 


INTERFACE  AGE  59 


ated.  Instead,  the  Z-80  REFRESH  signal  may  be 
jumpered  out  to  this  line  for  use  with  future  dynamic 
memory  designs. 

Processor  write  is  generated  by  the  Z-80,  however 
in  this  application  TDL  has  added  some  additional 
delay  in  order  that  the  STATUS  OUT  or  MWRITE  may 
be  properly  decoded. 

Handling  of  the  remaining  control  timing  is  straight- 
forward. HALT  ACK  is  generated  by  the  Z-80.  The 
MREAD  signal  is  a  function  of  the  Z-80  READ  and 
MREQ  signals.  STATUS  OUTPUT  is  a  function  of 
WRITE  in  conjunction  with  an  I/O  request.  STATUS 
INPUT  is  a  function  of  a  READ  in  conjunction  with  an 
I/O  request.  PDBIN  is  a  function  of  the  READ  signal. 
The  interrupt  acknowledge  signal  is  a  function  of  a 
simultaneous  Ml  and  I/O  request. 

All  processor  signals  with  the  exceptions  of  phase 
one,  phase  two,  and  not  clock  are  tri-statable  thru  the 
normal  Altair  bus  signal. 

The  ZPU  card  features  two  clocks  on-board.  The 
first  is  fixed  at  2MHz  thru  crystal  control,  and  the 
second  is  variable  between  less  than  1  and  greater 
than  4  Mhz  by  means  of  a  20  turn  trimpot. 

The  2Mhz  crystal  controlled  clock  is  selected  by 
placing  a  jumper  between  the  augat  pins  labeled  "C" 
and  "2M". 

The  variable  speed  clock  is  selected  by  "jumpering" 
between  "C"  and  "V".  (The  pins  "C",  "2M"  and  "V" 
are  located  in  area  A  on  the  ZPU  card.) 

The  crystal  oscillator  is  a  parallel  resonant  circuit 
using  a  2Mhz  crystal  in  conjunction  with  several  gates 
of  IC24,  a  4049  CMOS  oscillator  chip.  This  clock 
generates  CLOCK  and  a  driving  signal  for  a  pair  of  one- 
shots.  The  one-shots  (IC23  —  no  IC  number  was  given 
on  the  schematic  originally)  comprise  both  halves  of  a 
F4123  and  are  used  to  generate  01  and  02  clock 
signals.  This  is  not  a  bad  way  to  produce  these  non- 
overlapping  clock  signals. 

The  variable  oscillator  utilizes  the  remaining  sec- 
tions of  IC24  in  a  free-running  Oscillator  whose  fre- 
quency is  controlled  by  a  precision  RC  network,  and 
the  frequency  may  be  varied  by  adjusting  R33,  a  20K 
20  turn  trimpot.  The  variable  oscillator  presents  phase 
one  and  two  to  the  bus.  CLOCK  is  always  a  function  of 
the  crystal  oscillator  and  is  always  maintained  at  2'MHz 
by  that  clock  so  that  peripheral  cards  may  be  made  to 
operate  correctly  regardless  of  processor  speed.  See 
the  section  on  High-speed  operation  for  details  on  this. 

Regardless  of  which  clock  is  selected,  if  the  variable 
clock  is  tuned  to  within  100KHz  or  so  of  the  crystal, 
there  is  a  tendency  for  the  2  clocks  to  "lock  in"  to  each 
other,  that  is  to  get  into  a  fixed  resonance.  The 
operational  effect  of  this  is  that  when  the  variable  clock 
is  selected  in  this  condition,  initial  frequency  change 
either  up  or  down  will  tend  to  be  resisted  until  the  fre- 
quency "jumps"  roughly  50KHz,  at  which  point  smooth 
frequency  adjustment  mav  be  made. 

Two  augat  pins  (in  area  "B"  and  "C"  respectively  on 
the  board)  are  provided  for  observation  of  the  phase 
one  and  phase  two  signals.  These  points  are  test  points 
only  and  not  intended  for  adjustment  of  clock  speed. 
Clock  speed  should  always  be  measured  at  point  C  in 
area  A.  (On  my  board  area  C  was  hard  to  find  because 
of  the  loss  of  silk-screened  information.) 

By  removing  the  jumper  choosing  either  of  the  two 


on-board  clocks  and  connecting  the  common  pin  (C)  to 
an  external  frequency  source,  the  ZPU  card  may  be  syn- 
chronized with  another  system  if  the  user  chooses. 
This  also  makes  it  possible  to  run  the  processor  at  very 
low  speeds  (down  to  DC)  which  on  occasion  can  be 
tremendously  useful.  (For  example,  individual  T-states 
may  be  observed  on  the  front  panel.)  This  is  one  of  the 
nice  hardware  features  of  the  Z-80.  It  would  facilitate 
matters  if  a  coax  connector  could  be  placed  at  the  top 
of  the  board  to  aid  in  bringing  in  this  external  clock. 

A  visual  inspection  of  the  ZPU  card  reveals  more 
buffers  (8T97s  or  74367s,  ICs  1-10)  than  are  usually 
seen  on  a  CPU  card.  This  additional  buffering  was 
necessary  to  reduce  bus  loading  and  to  assure  normal 
front  panel  operation. 

The  front  panels  of  both  the  Altair  and  the  IMSAI 
look  at  the  high  order  addresses  for  information  about 
the  I/O  port  number  during  I/O  operations.  This  was 
optional  with  the  original  designers  of  the  8080 
systems  because  the  I/O  port  number  is  output  to  both 
the  high  and  low  order  addresses  by  the  8080. 

The  Z-80  outputs  I/O  port  information  only  to  the 
low  order  addresses.  (Contents  of  the  accumulator  are 
then  present  on  the  high  order  addresses.)  Hence,  in 
order  for  the  sense  switches  to  operate  normally  8  ad- 
ditional buffers  have  been  added  which  transfer  the 
lower  8  bits  to  the  high  order  address  lines  during  I/O 
operations. 

The  normal  configuration  of  the  ZPU  card  is  that 
which  enables  it  to  operate  in  an  Altair  or  IMSAI  with 
other  peripheral  boards. 

The  kit  as  supplied  and  the  instructions  as  given  re- 
sult in  a  CPU  card  which  may  act  as  a  direct  replace- 
ment for  your  current  8080  processor.  There  are  how- 
ever some  options  which  may  be  exercised  by  the  user 
which  take  advantage  of  several  of  the  Z-80  options. 
These  are: 

1.  Connecting  the  REFRESH  signal  to  pin  98  on 
the  bus. 

2.  Connecting  the  non-maskable  interrupt  to  vec- 
tored interrupt  lines. 

3.  Altering  the  processor  speed. 

4.  Use  of  the  duplicate  PRDY  line. 

Pin  #28  of  the  Z-80  outputs  a  RFSH  signal,  which 
may  be  used  to  provide  refresh  timing  for  dynamic 
memories.  This  signal  may  be  placed  on  pin  #98  of  the 
bus.  Pin  #98  is  normally  occupied  by  SSTACK  on  the 
S-100  bus  8080  system,  however  this  status  indi- 
cator is  not  terribly  useful  and  was  omitted  on  the  Z- 
80  altogether. 

The  RFSH  signal  may  be  picked  up  at  area  F,  im- 
mediately to  the  left  of  the  Z-80,  and  "jumpered"  to  the 
pad  in  area  G,  straight  down  and  slightly  to  the  left 
from  the  Z-80.  This  places  the  signal  on  the  bus. 

When  the  signal  is  on  the  bus,  the  status  light  on  the 
front  panel,  labeled  STACK  will  now  stay  lit  when  the 
processor  is  running,  indicating  that  the  REFRESH  sig- 
nal is  on  the  bus.   

For  the  exact  timing  information  about  the  RFSH 
signal,  see  the  Z-80  manual.  This  signal  is  useful  to 
systems  utilizing  dynamic  RAM  storage. 

On  the  Z-80,  pin  1  7  is  NMI,  the  non-maskable  inter- 
rupt. To  quote  the  Z-80  manual: 

"The  non  maskable  interrupt  request  line  has  a 
higher  priority  than  INT  and  is  always  recognized  at  the 


60  INTERFACE  AGE 


FEBRUARY  1977 


end  of  the  current  instruction,  independent  of  the 
status  of  the  interrupt  enable  flip-flop.  NMI  automati- 
cally forces  the  Z-80  CPU  to  restart  to  location  0066h  ■ 

This  powerful  interrupt  capability  is  made  available 
to  the  ZPU  user. 

Pin  #1  7  of  the  Z-80  and  pin  #4  of  the  bus  (VI0)  are 
normally  both  held  high  by  pullups.  Solder  pads  at 
location  H  and  location  E  may  be  jumpered  together, 
thus  making  the  NMI  available  at  VIO,  the  highest 
priority  vectored  interrupt  line. 

TheZ-80  has  the  capability  of  operating  from  DC  on 
up  to  some  maximum  limit  greater  than  2.5MHz  be- 
cause of  its  static  nature.  To  take  full  advantage  of  this 
capability  the  ZPU  card  has  been  designed  with  a  var- 
iable speed  clock  on-board. 

P  #1 .  an  augat  pin  soldered  to  a  wire  represents  the 
phase  one  and  two  inputs  to  the  processor.  If  the  pin  is 
placed  in  J2,  the  augat  pin  labeled  "V"  in  area  A,  then 
by  adjusting  the  trimpot  located  above  the  crystal,  the 
frequency  may  be  varied  over  a  range  of  approxi- 
mately 3  MHz. 

Normally,  when  one  is  reducing  the  speeds,  simply 
turning  the  speed  down  is  sufficient,  and  no  problems 
will  be  encountered.  For  individuals  whose  systems 
may  currently  be  marginal  at  2MHz.  reducing  the 
processor  speed  may  well  greatly  increase  reliability  of 
the  system.  Some  marginal  memories  may  operate 
with  no  wait  states  if  the  clock  is  set  at  about  1 .5  MHz. 

When  speed  is  increased  it  is  sometimes  necessary 
to  readjust  the  timing  of  the  74123  for  stable  oper- 
ation. This  RC  network  (R36  and  C26)  effects  the 
phase  one  and  phase  two  relationships,  which  be- 
come more  critical  as  processor  speed  is  increased. 

The  duplicate  PRDY  line  was  included  in  order  to 
facilitate  operation  with  the  Altair  8800B.  or  for  any 
other  use  the  user  might  dream  up. 

The  extra  PRDY  line  comes  off  of  IC1  7,  area  D.  im- 
mediately to  the  left  of  the  IC  has  2  pads  which  are 
normally  jumpered  together.  If  one  wishes  to  use  the 
extra  PRDY  line,  remove  the  jumper,  and  take  the 
PRDY  signal  off  of  pin  #3,  the  top  of  the  two  pads. 

The  8800B  requires  2  additional  RDY  lines.  XRDY2 
is  on  bus  line  #12.  If  operation  with  the  8800B  is  de- 
sired, jumper  the  additional  RDY  line  on  the  ZPU  to 
this  bus  pin.  The  other  RDY  line  is  FRDY.  which  is  pin 
#58  on  the  bus.  The  user  may  use  this  line  as  he 
wishes. 

The  Z-80  unlike  the  8080  does  not  necessarily  stop 
on  an  M  1  state.  In  order  to  operate  the  front  panel,  the 
processor  must,  however,  be  in  the  M  1  state.  TDL  has 
decided  to  omit  additional  circuitry  which  would  force 
the  Z-80  to  halt  at  M  1 .  Therefore  when  operating  in 
single-step  mode  it  is  necessary  to  make  sure  that  you 
step  the  processor  to  an  M  1  state  and  then  operate  the 
front  panel. 

The  Z-80  chip  itself  is  guaranteed  to  operate  up  to 
2.5  MHz.  Most  Z-80's  appear  to  operate  in  the  neigh- 
borhood of  3MHz  and  some  will  operate  at  4MHz.  TDL 
has  designed  the  ZPU  board  to  operate  reliably  at  clock 
speeds  up  to  4MHz.  The  ZPU  manual  contains  an  ex- 
cellent section  on  high  speed  operation  of  the  ZPU, 
including  a  simple  procedure  for  adjusting  the  speed  of 
the  processor  using  the  TDL  SPU  to  its  maximum. 

It  is  important  to  note  that  although  the  system 
CLOCK  line  is  maintained  at  2  MHz  regardless  of 
processor  speed,  some  boards  use  01  or  02  for  their 

FEBRUARY  1977 


SUPER  JOLT  features  TINY  BASIC. 

ASSEMBLER  and  DEBUGGER  ROMs  on  board! 

READY  TO  RUN  IMMEDIATELY'  CONNECT 
THIS  CARD  TO  MOST  ANY  TERMINAL  AND 
YOU'VE  GOT  ALL  THE  MICROCOMPUTER 
HARDWARE  AND  SOFTWARE  PROGRAMS 
YOU  MAY  EVER  WANT. 


BE  . 


ON  ONE 
SINGLE 
41/4"  x  7"  PC 
CARD  YOU 
GET  ALL 
THIS: 


H  M  if  i;: 

•:    w:  ,  ■  £1  ;+  till -J 


FULLY  ASSEMBLED  AND  TESTED 

•  8-bit  6502  processor  •  1.024-byte  static  RAM  •  3?-bidirec- 
tional,  programmable  I/O  lines    •  1  MHz  crystal  controlled  clock 

•  interval  timer    •  4  interrupts,  including  timer  and  non-maskable 

•  3  serial  interfaces  20  mA  current  loop.  RS  232  and  TTL  •  5.120 
bytes  resident  ROM  software  including  a  single  pass  symbolic 
assembler,  a  TINY  RASlC  and  a  Debug  Monitor 

AVAILABLE  NOW.  $375  without  assembler  and 
TINY  BASIC  ROMs,  $575  with.  ORDER  DIRECT 
or  at  participating  computer  stores.  Other  sys- 
tems, cards  and  kits  also  available  from  $96. 

MICROCOMPUTER  ASSOCIATES.  INC. 
2589  Scott  Blvd..  Santa  Clara  95050 


r.mr.iF  iNnniRY  iun  i? 


MORE  POWER  TO 
YOUR  ALTAIR* 

12  AMPS  @  8v.  (nominal) 
2  AMPS  (a)  ±16v. 


At  any  line  voltage  from: 

90  to  140  volts. 

Installs  easily  inside  any  Altair*  8800  or 
8800a. 

Over  voltage  and  over  current  protected. 
Conservatively  designed  and  specified. 


only  $90.00 

postpaid  in  the  U.S.A. 
California  residents  add 
$5.40  sales  tax. 

PARASITIC  ENGINEERING 


PO  BOX  6314 


ALBANY  CA  94706 


*  Altair  is  a  trademark  of  M  ITS  Inc. 


CIRCLE  INQUIRY  NO.  22 

INTERFACE  AGE  61 


timing.  These  boards  will  not  operate  correctly  when 
the  processor  timing  is  altered.  In  order  to  fix  this 
problem,  simply  cut  the  clock  trace  on  the  non- 
operating  board  (from  02  or  02  and  jumper  it  to  the 
CLOCK  line.)  I  have  done  this  routinely  on  all  my  I/O 
boards  so  that  I  may  substitute  either  the  ZPU  or  the 
CPU  card  at  will. 

The  TDL  ZPU  manual  contains  a  section  on  com- 
patibility. Bear  in  mind  the  fact  that  there  are  two  types 
of  compatibility,  hardware  and  software.  In  general, 
with  the  exception  of  the  SSTACK  signal  and  the  pre- 
viously mentioned  single-step  problem,  hardware 
compatibility  between  the  TDL  ZPU  and  the  S-100 
CPU  has  been  achieved.  The  front  panel  of  your  sys- 
tem will  operate  in  its  normal  fashion  with  all  switches 
serving  their  normal  function. 

The  Z-80  is  100%  machine  code  compatible  with 
the  8080's  seventy-eight  instructions.  Hence  standard 
8080  software  will  run  without  modification  on  the  Z- 
80.  However,  if  you  are  using  software  controlled  tim- 
ing by  means  of  the  number  of  machine  cycles  neces- 
sary to  complete  a  loop.  100%  compatibility  will  not 
exist.  The  problem  is  inherent  in  the  Z-80.  The  archi- 
tecture of  the  Z-80  is  more  efficient  than  that  of  the 
8080.  In  its  design  many  instructions  of  the  8080  - 
while  having  the  same  machine  code,  have  fewer  "T- 
states":  thus  the  instruction  is  executed  faster  in  real 
time. 

Obviously  where  the  real  time  length  of  a  timing 
loop  is  controlled  by  software,  the  program  will  have  to 
be  rewritten  to  adjust  for  the  higher  realtime  exe- 
cution speed  of  the  Z-80.  This  is  true  even  if  both  the 
8080  and  the  Z-80  are  running  at  exactly  2M  Hz.  In  the 


benchmark  programs  the  Z-80  running  only  the  8080 
instruction  set  has  been  found  to  be  about  10%  faster 
even  while  being  maintained  at  2MHz  clock  speed. 

TDL  notes  that  almost  all  8080  languages  run  with- 
out a  hitch  on  the  TDL  ZPU.  The  sole  exception  is 
Altair  Basic.  This  Basic  has  as  part  of  its  routines 
several  occasions  where  the  parity  flag  is  checked  as 
part  of  the  function.  In  the  Z-80  the  parity  flag  in- 
dicates OVERFLOW  and  not  parity  during  math 
routines.  As  a  result  Altair  Basic  will  not  run  on  the  Z- 
80.  However,  the  structure  of  the  Basic  language  does 
not  require  this  use  of  the  parity  flag;  it  was  used  to 
reduce  program  space  by  several  bytes.  It  therefore 
can  be  patched  by  those  who  wish  to  do  so.  An  attrac- 
tive alternative  would  be  to  procure  TDL's  8K  Basic 
which  is  Altair  compatible  and  which  contains  a  large 
number  of  exclusive  and  desirable  features.  Another 
solution  would  be  to  buy  one  of  the  Z-80  Basics  now 
available  which  provide  operational  features.  They  are 
not,  however,  8080  compatible. 

The  ease  of  assembly,  low  cost,  and  special  features 
of  the  TDL  ZPU  make  it  a  good  alternative  to  the  stan- 
dard CPU  card.  In  addition  TDL's  ZPU  manual  is  very 
comprehensive  and  the  Zilog  Z-80  is  also  included. 
TDL  also  provides  a  listing  and  paper  tape  of  their  ZAP 
monitor. 

The  ZAP  Monitor  is  a  IK  version  of  TDL's  2K 
ZAPPLE  Monitor.  It  is  relocatable  (can  be  placed 
anywhere  in  memory),  expandable  ("modules"  of  ad- 
ditional commands  can  be  tacked  on  at  the  end,  like 
cars  on  a  freight  train.),  and  quite  powerful  as  a  system 
executive. 


IBT-1 


Prices 
FOB 
St  Louis 
BankAmericard 
& 

Mastercharge 


ITies  flf  f  ordahla  WfH  Tsrmhal 

$525  complete  with  high  resolution  9"  monitor  $400  without- 
Horizontal  cursor  control  and  bell  $50  ■  INCLUDED  FEATURES- 

■  64  characters  by  16  lines 
■Auto  Scrolling 
■Underline  Cursor 
■RS232C  or  Current  Loop 
■Data  Rates  of  110, 300, 600, 
1200, 2400, 4800,  and  9600 
baud  are  jumper  selectable 
■All  osci  I  lators  ( horiz.,  vert., 
baud  rate,  and  dotsize  are 
crystal  controlled 

The  ACT-1  is  a  complete  tele- 
type replacement  compatible 
with  any  processor  which  supports  a  serial  1/0  port 
Completely  assembled  and  dynamically  tested. 

■Utfr-  VIDEO  TERMINAL  BOARD-  $250  -  The  same  circuitry  as  used  in  the 
*>mvm  ACT-1  on  a  single  8l/2"xH"  board.  The  VTB  is  assembled,tested  and 
comes  complete  with  power  supply.  Add  your  own  parallel  data  keyboard  and 
monitor  to  produce  a  complete  serial  I/O  video  terminal.  Available  -  Dec.  1  ■ 


MICRO-TERM  INC.  P.O.  BOX  9387  ST.  LOUIS,  MO.  63117^(314)  645-3656 


62  INTERFACE  AGE 


CIRCLE  INQUIRY  NO.  13 


FEBRUARY  1977 


The  expandable  feature  should  be  of  great  interest 
to  the  user.  Since  it  is  designed  in  a  modular  fashion, 
and  since  the  ZAPPLE  is  its  direct  parent,  this  monitor 
features  tremendous  expandability  -  either  of  routines 
generated  by  the  user,  or  by  routines  provided  by 
Technical  Design  Labs.  Several  "modules"  which  will 
be  of  great  interest  include  powerful  "breakpoint", 
"search"  and  "register  display"  commands. 

For  only  $269.00  the  TDL  ZPU  represents  a  very 
nice  low  cost  means  to  enhance  your  S-100  bus 
system. 

(16) 

ZPU  PARTS  LIST 


IC  1  to  10 
IC  11,  12,20 
IC  13,  15,  19 
IC  14 
IC  16 
IC  17 

IC  18,21,22 
IC  23 
IC  24 
IC  25 
IC  26 

R  1  to  10 
R  12  to  20 
R  30 
R  11,31 

R  21 

R  22  to  29 

R  32 

R  34 

R  35 

R  36 

R  33 

C  1,2,  14 

C  3  to  13 
C  16,  18,  19 
C  15,  17 
C20 

C  21,  24 
C  27  to  31 
C  22 
C  23 
C  25 
C  26 


8T97  or  74367 

74LS02 

74LS04 

74LS30 

74LS74 

74LS10 

74LS00 

74123 

4049 

Z-80 

7805 

1  K,  5%,  Brown,  Black,  Red,  Gold 

1  K,  5%,  Brown,  Black,  Red,  Gold 

1  K,  5%,  Brown,  Black,  Red,  Gold 

100  ohm,  5%,  Brown,  Black, 
Brown,  Gold 

47  ohm,  5%,  Yellow,  Violet, 
Black,  Gold 

4.7 K,  5%,  Yellow,  Violet,  Red, 
Gold 

4.7K,  5%  Yellow,  Violet,  Red, 
Gold 

3.3K,  5%,  Orange,  Orange,  Red, 
Gold 

10K,  5%,  Brown,  Black.  Orange, 
Gold 

12K,  5%,  Brown,  Red,  Orange, 
Gold 

20K,  20  turn  trimpot 

47Mf,  25V,  dipped  tantalum 
electrolytic 

.1  Mf  Disc  Ceramic 

.1  Mf  Disc  Ceramic 

.001  Mf  Disc  Ceramic 

33Mf,   25V  dipped  tantalum 

electrolytic 

.1  Mf  Disc  Ceramic 
.1  Mf  Disc  Ceramic 
10Pf  Disc  Ceramic 
6  Pf  Disc  Ceramic 
27  Pf  Disc  Ceramic 
47  Pf  Disc  Ceramic 


Y1 
J1 A 
J1  B 

J3,4,  5,  6 
P1 

1  Heatsink 

1  ea.  6/32  x  5/16' 

1  ZPU  PC  board 

12 
12 

1 

Miscellaneous 

6" 
5' 

1 
1 
1 


2Mhz  Crystal 

10  pin  molex  connector 

16  pin  high  profile  DIP  socket 

Augat  pins 

Augat  Pin 

machine  screw,  lockwasher,  nut 

14  pin  low  profile  IC  sockets 
16  pin  low  profile  IC  sockets 
40  pin  high  profile  IC  socket 


jumper  wire 
solder 

Zilog  Z80  CPU  Technical  Manual 

ZPU  Documentation  Manual 
Paper  tape  of  the  ZAP  monitor 


ulhe  uiag 

mrant  it, tn-b*... 


Note  Tr>ese  ace  the  aciual  clock  waveforms  at  11 
BO80  as  produced  by  a  Parasitic  Engineem 
Clock  F.x  Kit 


YOUR  ALTAIR*  8800 

can't  run  well  without 
a  correct,  reliable 
CP. U.  clock. 

A  PARASITIC 
ENGINEERING 

clock  fix  kit  is 
guaranteed  to 
produced^  and(J)2 
clock  pulses,  that 
meet  Intel's 
specifications  for  the 
8080.  Installs  easily  on 
your  Altair*  8800  or 
8800a  C.P.U.  board. 


only  $15  BankAmericard 

postpaid  in  the  U.S.A. 


PARASITIC  ENGINEERING 


PO  BOX  6314 


ALBANY  CA  94706 


"Altair  is  a  trademark  of  MITS  Inc. 


CIRCLE  INQUIRY  NO.  22 


FEBRUARY  1977 


INTERFACE  AGE  63 


COMPUTER  COUPLING 


ByB.  D.  Lichtenwalner 


With  a  little  time  and  diligence  you 
can  turn  that  old  Boudot  coded 
teletype  into  a  reasonable  terminal 
for  home  computing 


Recently  several  articles  reminded  us  that  good  old 
five  level,  Baudot  coded,  teletype  machines  could  be 
used  with  a  hobby  computer.  With  only  a  few  pro- 
gramming steps  code  conversion  could  be  accom- 
plished. Add  a  timing  loop  and  the  parallel  characters 
from  the  computer  bus  could  be  serialized;  but  how 
about  the  interface  to  those  printer  magnets  that  re- 
quire about  1  50  volts  to  operate  effectively?  Or  how 
about  all  those  hams  that  want  to  link  their  new  com- 
puter to  their  terminal  unit  and  get  on  the  air  with  a 
buffered  text  system,  an  automated  answer  back  sys- 
tem, or  one  of  those  really  fancy  mail  box/replay  sys- 
tems? Here  is  a  circuit  that  will  allow  linking  teletype 
loops  with  open  circuit  voltages  from  100  to  220  volts 
to  your  computer  without  any  danger  of  getting  high 
potential  voltages  onto  the  computer  chassis.  Also  the 
noisy  teletype  grounds  are  not  tied  to  the  computer 
chassis.  The  circuit  will  provide  both  "1"  and  "0"  level 
outputs  for  mark,  and  will  accept  both  "1"  and  "0" 
level  inputs  for  mark  for  keying  the  loop.  Provision  is  al- 
so made  to  have  the  output  blanked  for  inputs  gener- 
ated by  the  coupler  circuitry. 


Circuit  Description 

Two  opto-isolators  are  used  at  the  heart  of  the  cir- 
cuit to  isolate  the  loop  voltages  from  the  TTL  logic 
compatible  interface  to  the  computer.  OP1  has  the 
loop  current  flowing  thru  it,  and  as  a  result  turns  on  the 
photo-transistor  on  the  device.  As  a  result  the  output 
voltage  on  pin|J]of  the  OP1  is  low.  With  the  output  of 
OP1  low,  the  inverter,  U1,  provides  a  high  level  TTL 
output  at  circuit  output  pin  [T|-  (Boxed  Numbers  relate 
to  the  numbers  used  on  the  printed  circuit  board  used 
in  this  configuration.)  The  next  section  of  U1  again  in- 
verts the  signal  and  provides  the  user  with  a  "0"  level 
signal  when  the  loop  is  conducting,  (circuit  output  pin 
[5]).  When  the  loop  "opens"  as  a  result  of  keying,  or  re- 
ceiving a  signal,  if  tied  to  a  terminal  unit  TU,  the  out- 
put at  [4]  will  go  low  and  the  output  of  the  circuit  on 
pin  Qf]  will  go  high.  The  delay  components  (C2  and  R3) 
are  used  as  part  of  the  circuitry  to  defeat  the  receiving 
section  from  seeing  the  output  from  the  transmitting 
section  and  will  be  explained  later.  R2  and  the  light 
emitting  diode,  LED,  are  used  to  indicate  that  the  loop 
is  drawing  current.  It  will  give  the  user  an  indication 
that  the  loop  is  operational,  and  will  blink  on  and  off 
when  the  loop  keys.  It  is  not  necessary  and  may  be 
omitted  if  you  don't  like  all  that  flashing  going  on  while 
operating. 


64  INTERFACE  AGE 


FEBRUARY  1977 


TO  TELETYPE  LOOPS 


The  second  iso-coupler,  OP2.  is  used  to  key  the  loop 
(open  the  circuit).  Transistor  TL  really  does  the  job,  and 
the  isolator  just  provides  power  to  the  base  to  make 
sure  it  turns  on  when  the  loop  should  be  closed.  The 
circuit  works  like  this:  the  light  emitting  diode  in  the 
opto-coupler,  OP2,  is  turned  on  by  the  current  drawn 
thru  R5.  This  makes  the  phototransistor  in  the  opto- 
coupler  conduct.  Full  loop  voltage  is  then  applied  to 
the  base  of  the  transistor  with  R9  as  a  current  limiting 
resistor.  When  input  pin  [3]  of  the  circuit  is  brought  to 
ground  the  opto-coupler  does  not  conduct,  hence 
removing  the  forward  bias  of  transistor,  T1 ,  and  allow- 
ing it  to  turn  off.  When  the  transistor  is  off  the  loop  cur- 
rent drops  to  the  open  circuit  (Space)  condition.  It  will 
not  quite  drop  to  zero  since  the  circuit  does  steal  a  bit 
of  power  from  the  loop  to  operate.  This  minimum  cur- 
rent is  determined  by  the  open  loop  voltage  and  the 
value  of  R9.  The  33K  value  is  great  for  loop  open  cir- 
cuit voltages  from  80  to  250  volts.  (Range  on  your  ma- 
chine may  drop  some  on  the  extreme  ends  of  these 
voltage  ranges.)  If  you  run  higher  voltages,  increase 
R9.  If  your  loop  has  an  open  circuit  voltage  lower  than 
80  volts,  decrease  R9.  I  have  used  this  circuit  to  key  a 
24  volt  loop  by  reducing  R9  to  about  7.8 K.  (Use  the 
highest  value  that  produces  good  results.)  If  you  want 
to  drive  the  loop  with  a  mark  =  "1",  connect  your  in- 
put to  pin  [3].  If  this  is  your  input  pin  make  sure  that 
input  pin  [|]is  grounded.  If  you  let  TTL  logic  float  (open 
circuited)  it  will  assume  the  input  is  in  the  "on"  condi- 
tion, and  the  output  of  U1,  pin  [4]  will  always  have  a 
"0"  level  on  pin  \T\  of  the  opto-coupler.  This  will  al- 
ways make  the  loop  run  "open." 

Just  one  more  note  about  the  circuit  used  in  keying 
the  loop.  Zener  diode  D5,  is  used  to  prevent  excessive 
voltages  from  appearing  across  the  collector-emitter 
junction  of  OP2.  Be  sure  not  to  let  it  out. 

The  diode  bridge  consisting  of  D1-D4  is  added  to 
make  it  convenient  when  connecting  into  a  loop.  I  can 
never  remember  which  polarity  is  which,  so  for  a  few 
cents  I  don't  have  to  worry  about  it.  R1  and  C1  are 
transient  voltage  suppressors  to  keep  out  spikes  when 
the  loop  is  going  from  mark  to  space.  Always  a  good 
investment  if  you  are  a  conservative  circuit  designer. 

Construction 

The  components  used  in  the  project  are  all  avail- 
able from  companies  that  advertise  in  this  magazine. 
The  total  cost  of  the  project  for  components  will  be 
around  $1 0.00.  The  circuit  is  easy  enough  to  lay  out  on 


perf  board,  but  I  prefer  to  use  printed  circuits.  A  circuit 
board  is  available  from  Scott  Communications  for 
$3.50.  Whether  you  wire  by  hand,  make  you  own 
board,  or  get  the  board  from  Scott  the  following  notes 
should  be  helpful  in  building  and  getting  your  unit 
working.  First,  make  sure  the  diodes  are  in  the  proper 
direction.  If  you  buy  surplus,  as  I  do,  it  is  worth  the 
time  to  make  sure  the  labeling  is  correct.  A  simple  ohm 
meter  check  is  enough.  Be  especially  careful  with  the 
Zener.  You  won't  hurt  anything  if  you  get  it  wrong,  but 
your  loop  will  run  "open"  all  the  time.  Also,  assure 
yourself  that  the  LED  is  in  the  right  direction;  back- 
wards will  make  the  output  circuit  inoperative. 

Testing/Operation 

Connect  your  +5  Volt  power  supply  to  circuit  pin  [T] 
ground  pin  [7]  to  your  chassis  and  power  supply.  Also 
for  test  purposes  tie  pin  [2]  to  ground  temporarily.  Con- 
nect the  loop  to  pins  [s]  and  [|]  and  turn  on  the  loop. 
The  LED  should  glow  and  the  loop  should  operate  as 
always.  If  it  is  running  open,  check  that  the  input  pin  to 
the  OP2  (pin  \T\)  is  about  + 1 .5  volts.  If  it  is,  check  R9 
and  check  that  D5  is  in  the  right  direction.  When  the 
loop  is  "marking"  you  can  check  the  keying  circuit  by 
opening  the  ground  lead  at  pin  [T]  or  by  shorting  cir- 
cuit pin  [3]  to  ground.  Both  conditions  should  make  the 
circuit  run  "open."  When  the  loop  opens,  the  LED 
should  stop  glowing.  To  check  the  output  circuit,  con- 
nect a  voltmeter  from  ground  to  circuit  pin  [4].  With  the 
loop  activated,  and  the  5  volt  power  supply  con- 
nected, there  should  be  a  logical  "1"  on  pin  [4].  When 
the  loop  is  keyed  (signal  received  by  the  TU  or  press- 
ing a  key  on  the  TTY  machine)  the  meter  should  swing 
toward  zero.  Ungrounding  pin  [2]  should  give  a  solid 
"0"  on  pin  [4].  When  circuit  operation  is  verified  as  cor- 
rect, move  the  test  lead  to  pin  [5].  With  the  loop  acti- 
vated, this  pin  will  be  at  a  logical  "0,"  and  will  go  posi- 
tive when  the  loop  is  keyed.  Again,  ungrounding  pin  [T| 
should  give  you  a  logical  "  1 "  on  pin  [5]. 

For  some  operations  it  is  desirable  not  to  have  the 
output  circuit  follow  the  input  circuit.  To  disable  the 
output  circuit  from  signals  introduced  into  the  input 
circuit,  connect  a  general  purpose  diode  between  pin 
[3]  and  pin  [§].  The  anode  is  connected  to  pin  [T|- 

Conclusion 

The  circuit  shown  provides  a  simple  but  effective 
way  to  isolate  high  voltage  TTY  loops  from  normal  TTL 


FEBRUARY  1977 


INTERFACE  AGE  65 


TO  SERVE  YOU  BETTER! 
B1T5 


f\J 


Announces: 

BITS  N  BYTES  #2 

Opening  soon  in  San  Diego! 
Call  (714)  422-0889  for  info 
Our  Product  Lines: 


IMSAI 
Lear-Siegler 
Okidata 
Pickles  &  Trout 
PolyMorphic  Systems 


Solid  State  Music 

Soroc 

Tarbell 

TDL 

Vector  Graphic 


BITS  N  BYTES 

679  "D"  South  State  College  Blvd. 
(College  Business  Park) 
Fullerton,  CA  92631 

(714)  879-8386 

Hours:  M-F  6  p.m. -9  p.m.,  Sat.  12-6  p.m. 


CIRCLE  INQUIRY  NO.  38 


TAKE  ADVANTAGE  OF  US! 

DON'T  DUMP  YOUR  MONEY  INTO  THE  MAILBOX- 
THEN  SIT  AROUND  AND  WAIT!! 

DON'T  BUY  FROM  WANDERING  MERCHANTS 

WHO  WON'T  BE  THERE  WHEN  YOU  NEED  THEM!! 

A  COMPUTER  MART  IS  A  PLACE  WHERE  THEY  CARE 
ABOUT  YOU  -  AND  YOUR  COMPUTER  EQUIPMENT. 

WE  SELL  THE  BEST  LINES,  AT  REASONABLE  PRICES. 
THAT'S  HOW  WE  MAKE  OUR  LIVING. 

WE  HELP  YOU  GET  YOUR  SYSTEM  UP  AND  RUNNING. 
WE  WILL  BE  HERE  TOMORROW 
AND  THE  NEXT  DAY! 

LEASING  ARRANGEMENTS  NOW  AVAILABLE. 

THE  COMPUTER  MART 


NEW  YORK 

314  Fifth  Avenue, 
New  York,  N.Y.  10001 
(212)279-1048 
Between  32nd  and  31st 
Two  blocks  from  the 
Empire  State  Building 
Closed  Monday 

IMSAI,  PROCESSOR  TECHNOLOGY,  SOUTHWEST 
TECHNICAL  PRODUCTS,  OSI,  SEALS  ELECTRONICS, 
DIGITAL  GROUP,  APPLE  COMPUTERS,  TARBELL,  OLIVER, 
CR0MEMC0,  TDL,  CONTINENTAL  SPECIALITIES,  VECTOR, 
GBC  VIDEO  MONITORS,  BOOKS,  MAGAZINES,  CHIPS, 
SOCKETS,  CONNECTORS.  .  .  AND  ALL  THAT  GOOD  STUFF. 


LONG  ISLAND 

2072  Front  Street 
East  Meadow,  L.I., 
New  York, 11 554 
(516)794-0510 
Near  Hempstead 
Turnpike 


level  circuits.  It  has  the  flexibility  of  being  keyed  by 
both  polarity  signals  and  also  provides  TTL  level  out- 
puts with  both  a  positive  and  negative  signal  for  mark- 
ing conditions.  Commonly  available  parts  and  avail- 
able circuit  board  makes  this  an  inexpensive  and  easy- 
to-duplicate  project. 

Design  Note 

Values  for  R9  are  calculated  as  follows 

R9=  VOPENLOOP        -3  +  [R  LOOP  X  0.06]  0.003 

The  original  design  was  done  for  a  loop  with  100 
volts  open  circuit  and  an  assumption  that  the  R  LOOP 
was  small 


--BABE 
COLLECTOR 


7\     iO\  Ui  —  PIN  7- 

/U\   \ZJ       I     lh  —  PIN14- 

5  M  4  T 


0LAA/V 


PIN  1  PIN  7 


PARTS  LIST 
Ui  —  7403 

Di.  D2.  D3,       —  IN  4005.  600  PIV. 

1  AMP  DIODE 
Ds  —  IN  4732  —  4.7V.  1  WATT 

ZENER  DIODE 
OPi,  OP2  OPTO  —  COUPLER. 

Tl  TIL  112 
LED  —  SMALL  RED  LED 

SIMILIAR  TO  MVD  50 
Ci  —  0.1  /if,  600V  CAP 
C:  —  0.01/zf.  10V  CAP 
Ri.  Rs  —  470ohms,  1A  WATT  R.S. 
R2,  R3  —  1 50ohms.  Va  WATT  R.S. 


R4  —  47ohms.  1/4  WATT 
R6.  Rt.  Rs  4.7K,V*WATT 
R<>  33K,y2WATT 
Ti  =  2N5655 


(~*)  INDICATES  TERMINAL 
CONNECTIONS  FOR 
CIRCUIT  INPUT/OUTPUT 


CIRCLE  INQUIRY  NO.  48 


FIGURE  1 


66  INTERFACE  AGE 


FEBRUARY  1977 


THE  1976  COMPUTER 


STORE  ALL-STARS 


Mike  Eusey 


Steve  Zook 


Paul  Tripe 


John  Trotter 


Jim  Modecki 


Dick  Heiser 


The  most  experienced  computer  dealers  anywhere 


THE  COMPUTER  STORE 

820  Broadway 
Santa  Monica,  Calif.  90401 
Phone  (213)451-0713 


COMPUTER  CEHTER 


Authorized  dealer  for: 

MITS,  Southwest  Technical, Polymorphic,  Cromemco,  Microterm,  Oliver,  TDL,  Sanyo 
BY  POPULAR  DEMAND!  NEW  HOURS!!  TUES  -  F  R I  Noon  -  8  p.m.,  SAT  10  a.m.  -  6  p.m. 
Located  2  blocks  North  of  the  Santa  Monica  Freeway  at  the  Lincoln  Blvd.  exit 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  47 


INTERFACE  AGE  67 


HARDWARE  REPORT 


APPLYING 


The  Siliconix  LD  130  CMOS  A/D 
Converter  chip  is  admirably  suited  for 
providing  a  general  A/D  interface  with 
your  microprocessor. 


We  shall  open  this  month's  discussion  of  the  LD  1 30  by 
looking  into  the  selection  criteria  for  the  external  com- 
ponents and  reference  voltage. 

Any  sampling  rate  from  1  to  60  samples  per  second 
can  be  accommodated  by  simply  changing  the  Integrator 
and  Oscillator  Capacitors  (CINT  and  Cosc).  To  find  the 
proper  value  for  Cosc,  refer  to  the  clock  frequency  vs 
Cosc  curve  shown  in  Figure  1 .  The  oscillator  frequency 
and  sampling  rates  are  related  by: 


lose 

Sampling  Rate  =  f . . 
'     °  6 1 44 


10  100  1000  10  K 

COSC  -  OSCILLATOR  CAPACITOR  (pF) 

Figure  1.  f0SCvsc0SC 

In  some  applications  it  may  be  desirable  to  drive  the 
OSC  input  with  an  external  clock.  This  is  a  common 
requirement  in  many  data  acquisition  systems.  The  LD1 30 
can  be  driven  by  an  external  clock  capable  of  going  to 
logic  high  and  low  levels  of  V1  -  0.25  V  and  0.25  V 
respectively  while  sourcing  or  sinking  1  mA.  This  drive 
requirement  is  needed  to  override  the  drive  capabilities 
of  the  CMOS  oscillator  input  shown  in  Figure  2.  A 
standard  TTL  gate  will  not  be  capable  of  providing 
this  time  requirement. 


PROTECTION  CIRCUITRY 
NOT  SHOWN 


Figure  2.  Oscillator  Input 

The  integrator  capacitor  must  change  as  a  function 
of  frequency  by  means  of  the  following  relationship: 


103 


:INT  -  77Z^F/sec 

Tosc 


68  INTERFACE  AGE 


FEBRUARY  1977 


THE  LD130 


Minimum  supply  voltages  for  operation  are  v1  =  4.3  v,       By  Roger  Edelson,  Hardware  Editor 


V2  =  -4.3  V.  Although  the  LD130  will  be  functional  at 
these  voltages,  TTL  compatibility  can  no  longer  be 
guaranteed.  Maximum  voltages  for  functionality  are 
V1  =  8  V,  V2  =  -8  V.  V1  and  V2  must  be  matched 
within  1 .5  volts  of  each  other  or  a  zero  offset  will  be 
created. 

One  of  the  major  features  offered  by  the  CMOS  LD1 30 
is  its  very  small  power  consumption  (  25  mW  @  ±  5  V). 
This  power  consumption,  however,  increases  significantly 
as  V1  and  V2  approach  their  maximum  rated  limits  (60  mW 
@  ±8  V).  Low-power  operation  then  dictates  a  lower 
supply  voltage. 

There  exists  a  number  of  power  supply  and  board 
layout  problems  that  can  lead  to  instability  and  poor 
performance  in  the  LD130  A/D  system.  The  problems 
arise  from  two  main  considerations— V1  regulation  and 
ground  system  layout. 

V1  regulation  becomes  important  to  the  LD130  for  a 
number  of  reasons.  First,  the  LD130  linear  stages  are 
powered  by  the  same  positive  voltage  that  supplies  the 
logic  section  and,  if  used,  a  LED  display.  Display  noise 
on  this  supply  then  must  be  rejected  by  the  amplifiers. 
Since  the  LD1  30  has  excellent  power  supply  rejection 
for  V1  (0.6  mV  change  of  output  for  a  1 V  change  in 
this  error  source  will  be  considered  to  be  of  secondary 
importance. 

A  major  consideration  is  the  modulation  of  the  internal 
oscillator  frequency  by  an  unregulated  V1 .  A  glance  at 
the  Cosc  vs  fosc  curves  of  Figure  1  shows  that  this 
oscillator  frequency  is  a  strong  function  of  Vr  The  V1 
seen  by  the  LD1 30,  however,  can  carry  a  considerable 
A.C.  component  when  LED  displays  are  used. 

When  interfacing  with  a  microcomputer,  the  display 
problem  does  not  exist.  Proper  attention  should  still  be 
paid  to  grounding  techniques  to  ensure  that  no  logic 
currents  are  imposed  on  the  LD130  ground  return  line. 
Furthermore  the  LD130  +  5V  supply  should  be  well 
bypassed  to  ground  and  either  a  series  diode  or  a  regulator 
should  be  used  to  provide  some  series  resistance  on  the 
capacitor  filter.  (See  Figure  5) 

The  Auto-Zero  capacitor  (CAZ)  is  not  critical  and  should 
remain  at  0.1  Mfd  over  the  full  sampling  rate  range.  In 
special  cases  of  combinations  of  low  sampling  rates  and 
high  ambient  temperatures  (not  usually  found  in  home  en- 
vironments) a  higher  value  may  be  necessary.  Capacitor 
tolerance  or  type  is  not  critical;  standard  ceramic  disc 
types  may  be  used. 

Capacitors  CAZ  and  CINT  should  be  of  a  type  which 
maintains  a  high  insulation  resistance  over  the  temperature. 
All  Film  Type  capacitors  are  suitable. 


The  equation  COUNT 


VIN 


V 


given  last 


REF 


The  "Quantized  Feedback"  conversion 
scheme  introduced  by  Siliconix  provides 
the  LD  130  with  AUT0-ZER0  Auto- 
Polarity  from  a  single  reference  voltage. 


month  shows  that  a  2.000V  reference  is  required  to 


Part  II  of  a  Series 


FEBRUARY  1977 


INTERFACE  AGE  69 


1008 

1007 

\  1006 
) 

J  1005 
3  1004 


0.5  1.0  1.5  2.0  2.5 

VREF  -  REFERENCE  VOLTAGE  (V) 


Figure  3.  Ratio  Operation 


+  5V 

A.  CR033 

Full 

Vref 

Scale 

\  ^   2K  ohms 

Adjust 

^  516K  ohms 

Figure  4. 


Series  Diode 
Supply — [>|  


1 0^F  -J- 


■  to  LD  130 


.01m  F 


Figure  5. 


GND 

vref  O 

V20- 


_L_ 

[>1  ( 


0.068  jjF 


-OV|N 


>B3 


Figure  6.  Lock-Up  Protection  FET 


achieve  an  output  that  reads  directly  in  millivolts  of  analog 
input  (1 .000  Volts  Full-Scale).  Scaling  the  output  to  read 
in  other  than  volts  can  be  achieved  by  adjusting  VREF 
according  to  this  equation.  It  must  be  realized  that  the 
actual  LD1 30  can  vary  by  as  much  as  5%  of  the  predicted 
values,  so  the  VREF  must  be  adjustable  for  proper 
calibration. 

Since  the  output  of  the  LD1 30  is  simply  the  ratio  of  the 
input  voltage  with  the  reference  voltage,  ratio  measure- 
ments are  natural  to  this  system.  The  typical  ratio  operation 
error  of  the  LD1 30  is  depicted  in  Figure  3.  A  lower  VREF 
limit  of  0.5V  is  recommended  for  a  stable  jitter-free  output. 
Reference  voltages  less  than  0.5  Volt  provide  an  unstable 
reading  due  to  the  large  amount  of  noise  inherent  in  the 
CMOS  op-amps. 

The  typical  LD130  application  as  a  3  digit  DVM  shows 
the  reference  voltage  being  developed  by  a  current 
regulator  diode-resistor  combination,  (see  Figure  4.)  This 
is  the  preferred  method  for  creating  stable  low-voltage 
references.  The  temperature  compensated  current 
regulator  diode  (the  electrical  dual  of  the  temperature 
compensated  Zener)  keeps  a  constant  current  through 
the  series  connection  of  metal  film  resistor  and  cermet 
trimmer.  A  typical  temperature  coefficient  of  50  ppM/°C 
is  achieved  by  this  system— an  order  of  magnitude 
improvement  over  a  typical  low-voltage  Zener  (IN746, 
3.3  V  Zener). 

The  LD130  specifications  limit  the  maximum  input 
current  at  VREF  or  VIN  to  1  ma.  In  order  to  prevent  damage 
to  the  chip  a  current  limiting  resistor  should  be  placed 
in  series  with  these  inputs  if  the  voltage  might  exceed 
the  supply  voltage  by  more  than  0.3V.  A  250  Kr  resistor 
in  series  with  pin  #1  7  will  offer  input  protection  up  to 
250V  over-voltage  and  accuracy  would  be  degraded  by 
only  0.025%. 

The  LD130  has  protection  circuitry  at  all  inputs  and 
output  which  prevent  static  damage  by  clamping  the  vol- 
tage at  these  pins. 

The  E204  JFET  shown  in  the  LD130  application  of 
Figure  6  eliminates  a  power-on  lock-up  mode.  This 
condition  manifests  itself  by  a  constant  007  output.  If  the 
JFET  is  not  used  it  may  be  necessary  to  recycle  the 
power  supplies  to  attain  normal  operation.  The  use  of  the 
E204  JFET  reduces  the  maximum  allowable  negative 
supply  voltage,  V2  to  -5.5  V.  A  higher  V2  supply  may 
be  used  if  a  higher  pinch-off  FET  is  used  (E21 1  extends 
V2  to  -6.5V). 

While  both  the  Digit  Strobe  (D1 ,  D2,  and  D3)  and  Data 
Bit  (B0,  B1t  B2,  and  B3)  outputs  are  capable  of  driving 
1  TTL  load,  the  maximum  internal  clock  stability  and  thus 
A/D  stability  is  attained  when  the  bit  outputs  sink  less 
than  400  A.  Therefore,  CMOS  or  low-power  Schottky 
TTL  decoders  are  preferred.  Standard  TTL  loads  will  not 
contribute  to  A/D  instability  when  an  external  oscillator 
is  used. 

The  interdigit  blanking  period  allows  the  LD1  30  to 
interface  with  gas  discharge  displays  when  oscillator 
frequencies  of  1 6  kHz  or  less  are  used. 

Since  the  BCD  data  for  each  digit  appears  before  and 
does  not  change  until  after  the  digit  strobe  (except  when 
new  data  are  loaded),  interface  problems  such  as  latching 
of  improper  codes  are  minimized. 

The  net  digit  duty  cycle  is  reduced  to  25%  by  the 
interdigit  blanking  period.  Average  LED  currents  must  be 
calculated  with  this  consideration. 


70  INTERFACE  AGE 


FEBRUARY  1977 


'avg  (LED)  -  ZiPEAK  x  0.25 


Since  the  total  inter-digit  blanking  time  is  equal  to  a  digit 
ON  time,  it  may  be  used  as  a  fourth  digit  strobe  for 
special  applications. 

The  ranging  signals  (overrange  and  underrange)  are  time 
multiplexed  on  the  SIGN/UR/OR  output.  Demultiplexing 
consists  of  logically  ANDING  this  output  with  either  the 
D1  or  D2  Digit  Strobe  output  (see  Figure  7).  Thus: 

D1  •  SIGN/UR/OR  =  Underrange  Pulse  (active 
high)  when  count  <  80 


D2  •  SIGN/UR/OR 


D3  •  SIGN/UR/OR 


Overrange  Pulse  (active 
high)  when  count  >999 

Plus  polarity  sign 


If  either  an  underrange  or  overrange  condition  exists,  the 
appropriate  pulse  will  occur  once  each  sampling  interval 
during  the  zeroing  time.  This  single  pulse  can  be  used 
directly  to  step  an  Autoranging  circuit  into  the  next  range. 
Figure  8  shows  the  implementation  of  an  Autoranging 
System  for  the  LD1 30. 

The  LD1 30  offers  features  useful  in  many  data  acquisition 
system  applications.  The  compact  size,  low  parts  count, 
low  power  and  BCD  output  of  the  LD130  can  become 
important  features  in  the  trend  to  complex  portable 
instrumentation.  The  integrating  type  "Quantized  Feedback" 
conversion  technique  gives  high  noise  rejection  properties 
while  offering  conversion  rates  of  up  to  60  per  second. 

The  fact  that  the  LD1 30  offers  mixed  Measurement  and 
Zero  periods  suggests  that  high  rejection  to  specific 
noise  frequencies  can  be  obtained.  While  this  is  true, 
the  rather  variable  nature  of  the  LD130's  internal 
oscillator  makes  it  impractical  to  reject  specific  problem 
frequencies  (such  as  the  A.C.  line  frequency).  An  external 
oscillator  can  allow  this  maximum  rejection  (  70  dB) 
to  be  attained  by  providing  a  more  precise  clock 
frequency.  The  proper  oscillator  frequency  can  be  chosen 
from  the  following  relationship: 


2048  f 


noise 


OSC 


N 


where  N  is  any  integer  that  keeps  the  oscillator  frequency 
within  its  prescribed  limits  (6kHz  to  370  kHz). 

The  worst  case  Normal  Mode  Rejection  for  an  untuned 
system  is  defined  by: 

fr 

NMRR  (worst  case)  =  -20  log 


FOSC 


4096  7T  f  • 
noise 

The  internal  latches  of  the  LD130  can  be  made  to  hold 
a  reading  indefinitely  when  a  SPDT  switch  is  added  to 
the  circuit  as  shown  in  Figure  9.  in  the  convert 
position,  the  Auto-Zero  Capacitor,  CAZ,  is  connected  to 
the  AZ  input  and  the  internal  latches  are  updated  after 
each  conversion.  When  switched  to  "Hold",  the  large 
negative  output  of  the  AZ  amplifier  drives  the  Integrator 
to  the  positive  rail.  Since  the  comparator  can  never  go 
low,  the  control  logic  retains  the  data  from  the  conversion 
preceding  the  switch  change  to  "Hold".  While  the  "Hold" 
mode,  the  Auto-Zero  function  is  inhibited.  This  means 
that  VAZ  is  no  longer  valid  and  that  the  first  conversion 
after  returning  to  the  "convert1'  position  will  not  be  valid. 

FEBRUARY  1977 


clock  rLnnnnnJUimoR^^ 

B3  J  8~ 


1 


J 


I 


1  1 


1 


°d  1  

°*  I  I 

-I  I  L 

M  ri  r—  

SIGN/UR/OR  II  i  T  I 

.  I— I  L_J  I 

T  V 

UNDERRANGE    OVER  RANGE 


J  L 


Figure  7.  Data  Output  Format         (Output  =  769) 


10M  P. 
INPUT  O  VW- 


>1.11M  >101K  >  IDK  >54CI£i 

<   si    ?  n    ?  > 

to Ua     In  U 


v2  O- 


2.  7,  10,  15,  5 

|~T_ 


sign  um  on  t 


Figure  8.  Autoranging  System 
For  LD130 


°  cazT 


HOLD  ♦ 


Figure  9.  "Hold"  Function 


INTERFACE  AGE  71 


DATA  VALID  WHEN  "0" 


"O  -5  V 


NOTE:  WHEN  USING  THIS  CIRCUIT  C)NT  SHOULD  S  £20. 


Figure  10.  End-of -Conversion 
Decode 


Note  that  the  AZ  line  (pin  #16)  must  be  switched  to 
-5V.  Standard  TTL  logic  can  not  be  used  in  this  case, 
but  a  SPDT  analog  switch  operating  from  ±  5V  supplies 
could  be  used.  The  Siliconix  DG  300  series  should  pro- 
vide this  capability  while  allowing  interfacing  with 
standard  TTL  logic  at  its  control  pin. 

Due  to  the  limited  number  of  pins  available  on  the 
LD130,  the  internal  system  timing  signals  (M/Z,  AZ)  are 
not  available  to  the  outside.  In  the  instances  where  A/D 
system  timing  may  be  needed,  it  may  be  decoded  with 
the  circuit  of  Figure  10.  This  circuit  uses  the  integrator 
output  (INT,  Pin  4)  to  develop  an  End-Of-Conversion 
(EOC)  signal  that  approximates  the  complement  of  the 
internal  AZ  signal  depicted  last  month.  The  circuit  can 
decode  these  states  because  the  integrator  operates 
around  0  volts  during  the  Measurement  and  around  -1 
Volt  during  the  Auto-Zero  phase.  The  average  value  of 
the  integrator  then  is  indicative  of  the  state  of  the 
AZ  signal.  The  LD1 30  data  are  valid  and  remains  valid  as 
long  as  the  output  of  the  EOC  circuit  is  "0".  Switching 
of  an  analog  multiplexer  should  occur  during  this  time. 

It  is  important,  for  the  proper  functioning  of  this  circuit 
over  the  full  analog  voltage  range,  that  CINT  be  increased 
to  twice  the  value  given  by  Equation  2. 

Although  multiplexed  BCD  is  more  generally  useful, 
the  output  of  the  LD130  can  be  demultiplexed  and 
presented  in  a  parallel  format  as  shown  in  Figure  1 1 . 

Applications  for  this  format  include  printer  drive  and 
interface  to  a  12  bit  data  bus.  Interface  to  a  printer 
would  also  require  the  presence  of  the  End-Of-Conversion 
Signal  as  a  Print  enable.  The  EOC  decode  circuit  is 
included  in  the  schematic  for  this  purpose.  Multiplexed-to- 
Parallel  BCD  conversion  is  accomplished  by  the  three 
CD4042  Quad  latches.  These  CMOS  ICs  minimize  parts 
count  by  eliminating  the  need  for  data  bit  buffers. 


O 


-K> 


ANALOG J C 
INPUT] 


[o- 


E204 
G 


DATA  VALI 
WHEN  "0' 


0  A  1N914 


VREF 

B3 

LD130 

B2 

V|N 

Bl 

ANLG 

B0 

GND 

AZ 

D3 

D2 

°1 

INT 

V2 

COND 

OSC 

6  1 14 

0.001    i  - 


-I 


iok  n 
-VvV 


-O  v2 


PARALLEL 
BCD  OUTPUT 


DIGIT  3 
(MSD) 


72  INTERFACE  AGE 


Figure  11.3  Digit  A/D  with 
Parallel  Output 


FEBRUARY  1977 


The  A/D-  juP  system  is  the  preferred  method  of 
handling  and  storing  analog  quantities.  The  cumulative 
errors  of  analog  data  handling  are  eliminated  while 
powerful  system  functions  can  be  achieved  with  a  few  ICs. 

The  LD1 30  A/D  has  many  features  important  to  ixP- 
based  systems  such  as: 

1 .  BCD  Coding  —  The  must  useful  format  when  the  out- 
put is  to  be  observed  by  humans. 

2.  LSI  —  Keeps  system  complexity  down. 

3.  Multiplexed  Output  —  Readily  interfaces  4  and  8  bit 
systems. 

One  of  the  problems  involved  in  interfacing  the  4  bit  m  P 
is  that  the  4  bit  bus  is  fully  taken  up  by  the  4  BCD  data 
bits.  Additional  bits  for  digit  markers  are  not  available. 
One  solution  would  be  to  apply  the  digit  strobes  to  an 
additional  input  port  thus  identifying  the  data.  This  method, 
shown  in  Figure  1  2,  offers  a  simple  hardware  interface 
for  the  LD1  30  but  requires  an  additional  input  port 
and  a  significant  amount  of  processor  time  to  synch  up 
to  the  non-synchronized  LD1 30.  Here  the  circuit  shown 
in  Figure  10  is  used  to  provide  an  end-of-conversion 
(EOC)  signal  to  the  ju  P.  The  m  P  must  constantly 
monitor  the  input  port  containing  this  signal  and  use  the 
information  presented  from  D3,  D2  and  D1  to  determine 
which  digit  is  present. 


4  BIT  pP 
INPUT  PORT 


200  pF 


JT 


0,015  ^jF  Z= 


OSC  B3 
B2 
B1 
BO 

AZ  LD13° 

£  t>3 
D2 

INT  O] 


4  BIT  pP 
INPUT  PORT 


-O  -5  V 


Figure  12.  4  Bit  fiP  Interface 


CLOCK  GENERATOR 

I  $T       700  kHz) 


pP  INPUT  PORT 
4- BIT 


16      3  < 


0  01  *F 


a)  Synchronized  4  Bit  juP  Interface 


FIM  0,  00H 

RAM  AND  ROM  ADDRESS 

FIM  2.60H 

ADDER  CONSTANT 

FIM  4,  DOH 

TIME  CONSTANTS 

SRC  <> 

REGISTER  CONTROL 

CLB 

CLEAR  CARRY  AND  ACCUMULATOR 

READ: 

RDR 

READ  ROM  PORT  0 

ADD  2 

ADD  CONSTANT  (6) 

JNC  READ 

REPEAT  IF  D]  HASN'T  OCCURRED 

CHANGE: 

CLC 

CLEAR  CARRY 

RDR 

READ  ROM  PORT  0 

ADD  2 

ADD  CONSTANT  (6) 

JC  CHANGE 

LOOK  FOR  FALLING  EDGE 

NEXT: 

RDR 

READ  4  BCD  BITS  OF 

WRM 

WRITE  TO  RAM 

INC  1 

INCREMENT  RAM  ADDRESS 

SRC  0 

SEND  NEW  RAM  ADDRESS 

TIME: 

ISZ  5,  TIME 

TIME  DELAY 

ISZ  4,  NEXT 

READ  NEXT  DIGIT 

b)  Program  Instructions 


^  start  ^ 


READ  ROM 
PORT 

I  BCD  9 

ZHO       YES  > 

READ  DIGIT 
BCD  WRITE 
TO  RAM 


INCREMENT 
RAM  ADDRESS 


W  A I T  32 
INSTRUCTION 
CYCLES 


3  DIGITS  PICKED  UP 


CONTINUE 

c)  Flow  Chart 


FEBRUARY  1977 


Figure  13.  4  Bit  fi? 


INTERFACE  AGE  73 


The  interface  shown  in  Figure  1  3  simplifies  software 
and  saves  iiP  polling  time  by  synchronizing  the  LD130 
to  the  /liP  system  clock.  This  application  is  designed 
specifically  for  the  INTEL  4004,  4040  iiPs.  As  shown  in 
Figure  1 3a,  the  \iP  system  clock  is  divided  by  1 6  (by  the 
CO4024  counter)  before  driving  the  OSC  input  of  the 
LD1 30.  The  ^  output  of  the  LD1 30  triggers  the  one-shot 
which,  in  turn,  forces  an  unallowed  BCD  state  (1 1  xx  or 
>  Ch)  on  the  data  bit  lines— this  is  the  cue  that  allows 
the  /iP  to  identify  D1  time.  When  the  unallowed  BCD 
state  disappears,  the  /iP  picks  up  the  D1  data  and 
stores  it  in  memory.  D2  and  D3  data  are  picked  up 
32  and  64  /iP  machine  cycles  later  respectively. 
Since  the  /iP  and  the  LD130  are  synchronized  by  the 
common  clock  generator.  The  flow  chart  and  software 
for  this  system  are  given  in  sections  b  and  c  of  Figure  1 4. 

Other  counter  types— 741 63  for  example  may  also  be 
used  as  may  other  one-shots  (741  23). 

Obviously,  the  statement  "3  Digits  Picked  Up"  will  have 
to  be  implemented  by  either  incrementing  or  decrementing 
a  register  and  checking  the  result.  Maximum  line- 
frequency  rejection  can  be  an  added  bonus  of  this  system 
if  the  /a  P  clock  oscillator  frequency  is  chosen  to  reject 
this  specific  noise  frequency. 

The  interface  shown  in  Figure  13  does  not  include 
the  data  valid  (EOC)  signal.  This  could  be  added  to  the 
system  and  the  output  logically  "ANDED"  with  the 
output  of  the  one-shot.  An  alternative  approach  would  be 
to  simply  repeat  the  pickup  routine  a  second  time  to 
verify  the  data. 

The  8  bit  bus  allows  additional  data  markers  to 
accompany  the  BCD  data  to  the  /iP  accumulator.  Figure 
14a  shows  all  8  lines  taken  up  with  4  BCD  data  bits, 
3  digit  strobes  and  a  data  valid  bit.  This  data  interface 
requires  the  yP  to  occasionally  poll  the  input  port  to 
determine  if  the  data  valid  bit  is  low  (input  is  less 


H?  DATA  BUS 


I   I   I   I  I 


Q  START 


8  BIT  INPUT  PORT 


p 


200  pF 


>3k  a 


_L 

x 

3 


0.1  yF- 


^1  0.015  =r 


OSC 

U! 

y2 

AZ 

LD130 

o2 

INT 

REGISTER 
=  80H* 

READ  INPUT 
PORT 

1  ACC  £  80H 
JUCOMPARE) 

£nq       YES'S  » 

REGISTER 
■  40H* 


DATA 

D1 

0 

0 

0 

0  B3 

B2 

B1 

B0 

D2 

0 

0 

0 

0  B3 

B2 

B1 

BO 

D3 

0 

0 

0 

0  B3 

B2 

B1 

B0 

a)  8  Bit  fiP  Interface  b)  Data  Storage  Format 

Siliconix  &  Interface  Age  assumes  no  responsibility  for  cir- 
cuit shown,  nor  do  they  represent  or  warrant  that  they  do 
not  infringe  any  patents. 


READ  INPUT 
PORT 


T  ACC  ^  REGISTER 
'  {COMPARE} 


SUBTRACT 
REGISTER 
FROM  ACC 


WRITE  TO 
RAM 


INCREMENT 
RAM  ADDRESS 


CLEAR 
CARRY 


REGISTER  k.  10H 


*H  DENOTES  HEXADECIMAL 

c)  Flow  Chart 


74  INTERFACE  AGE 


Figure  14.  8  Bit 


FEBRUARY  1977 


than  80H).  When  this  occurs,  the  yP  then  successively 
looks  for  the  appearance  of  Dv  D2,  and  D3  by 
comparing  with  the  numbers  40H,  20H,  and  10  H 
stored  in  a  working  Register.  Each  of  these  numbers 
is  consecutively  subtracted  from  the  data  to  yield  the 
3  digits  of  BCD  data  which  are  stored  in  memory  (RAM) 
in  the  format  shown  in  Figure  14b.  These  digits  can 
then  be  combined  into  the  desired  format. 

Some  applications  for  the  LD1 30  will  now  be  discussed. 
A  simple  application  of  the  ratio  measurement  feature  of 
the  LD130  would  be  as  an  angular  or  linear  position 
measuring  instrument.  The  linear  potentiometer  and  two 
resistors,  shown  in  Figure  1  5,  are  the  only  additional 
components  needed  for  this  measurement  and  serve 
both  to  provide  the  position  to  voltage  conversion 
(0  to  1 00%)  and  the  tracking  reference  voltage.  Applying 
the  voltage  divisions  from  these  resistors  to  the  equation 
for  COUNT 


The  fact  that  the  forward  voltage  decreases  with  tempera- 
ture requires  that  the  sense  of  the  LD130  sign  bit  be 
inverted  ("0"  for  +,  "1"  for  -). 

The  LD130  offers  substantial  advantages  in  terms  of 
cost,  power,  simplicity,  and  versatility  to  the  A/D  market. 
This  chip  offers  simple  interfacing  the  juP  systems 
requiring  few  additional  components  and  a  simple 
software  solution. 

INTERFACE  AGE  thanks  Gary  Grandbois  of  Siliconix, 
the  author  of  Application  Note  AN  76-5  "Applying  the 
LD130"  from  which  much  of  this  material  is  derived. 
Further  thanks  go  to  Bryon  McCullough,  sales  engineer 
for  Siliconix  who  provided  the  application  assistance 
without  which  the  article  could  not  have  been  written. 
Next  month  we  shall  cover  a  collection  of  l/Cs  which 
should  be  of  interest.  —R.H.  Edelson 


Gives 


2R 


r1 


VREF  =  V1^r"  and< 


V||\j  =      "^"X  where  X  is  the  pot  coefficient 
(ranging  from  0  to  1 ) 

then  COUNT  =  -^(2000)  2000 


V 


REF 


V1(2R/4R) 


which  gives  COUNT  =  1000X 

Scaling  to  degrees,  centimeters,  or  any  specific  measure- 
ment unit  simply  involves  solving  for  the  appropriate 
divider  resistors  using  the  equation  for  COUNT. 

A  digital  Thermometer,  reading  in  either  °F  or  0.1  °C, 
can  be  constructed  by  adding  the  circuit  shown  in 
Figure  23  to  a  basic  LD130  DPM.  This  circuit  converts 
temperature  to  a  voltage  by  using  the  temperature 
dependent  forward  voltage  of  a  PN  junction  as  the  sensing 
element.  The  change  in  this  voltage  is  typically  -2.3  mV/°C 
at  room  temperature  and  can  be  suitable  linear  if  the  PN 
junction  is  biased  with  a  constant  current  much  greater 
than  the  reverse  saturation  current. 

Since  the  diode  will  have  a  finite  voltage  at  either  a 
Celsius  or  Farenheit  Zero,  this  voltage  component  must 
be  subtracted  out.  Figure  16  shows  the  temperature 
sensing  diode 

(Base-Emitter  of  a  2N2222)  biased  with  a  0  T.C.  Current 
regulator  diode  (CR033).  Zeroing  is  achieved  by  summing 
the  currents  from  the  CR033  and  E506  diodes  at  the  wiper 
of  a  potentiometer. 

The  scaling  for  either  Celsius  or  Farenheit  is  achieved 
by  adjusting  VREF  according  to  equation  for  COUNT. 

v, 

Count  =  2000 


V 


REF 


AV, 


ACount  =  2000 


V 


REF 


Thus 


for  AT  =  100  C     AV|N  = 
AT=  1000°F    AV,N  = 


VREF  =  0.46  V  for  C 
=  2.5  Vfor°F 


-230  mV 
-1.278  V 


V1 


2R 


TO  LD130 


VrefINPUT 


Vin  INPUT 


Figure  15. 


v3  V 

E506  ^ 

^  CR033 
^j'  LD130 

1K  a  \ 

5 

U  " 

7 

Figure  16.  Temperature  to 

Voltage  Converter 


FEBRUARY  1977 


INTERFACE  AGE  75 


r| 

EDA  BLVD.  1 

cci 

NEXT  TO 
■  PIER  1 
IMPORTS 

COMPUTER 
COMPONENTS 

5848  SEPULVEDA  BLVD. 
VAN  NUYS,  CALIF.  91411 

(213)  786-7411 

HOURS 
TUES.  -  FRI. 
10  A.M  to  9  P.M. 
SAT.  9  to  9 
SUN.  10  to  6 
CLOSED 
MONDAY 

j  SEPULV 

BURBANK 
BLVD. 

*** 

*  AH 


HE  XIDECIM  A  L 
DISPLAY 
HP  5082-7340 

$7.00(1)    $6.00(10)  $5.00(100) 


74150  IN  CERAMIC  DIP  HOUSE  NUMBER 
$1.00(1)  75<t(10)  60+(100)  454(1000) 

74181  IN  CERAMIC  DIP  HOUSE  NUMBER 
$1.25(1)  $1.00(10)  704(100)  504(1000) 

74190  PRIME  NATIONAL  PARTS 
904  (1)  804  (10)  704  (100)  604  (1000) 

AMS  6002  CERAMIC  DYNAMIC  RAM  1Kx1 
$1.00(1)  704(10)  504(100)  354(1K) 

DB25's  (S)$3.00  (P)$2.00  SHELLS  $1.00 
IMSAI  100  PIN  CONNECTORS  $5.00  ea. 
DIP  SW'S  8  POSN  $2.50  7  POSN  $2.25 

20K  SLIDE  POTS  (STACKPOLE  114) 
504(1)    404(10)  354(100) 

HPROM  1024  BY  HARRIS  SEMICONDUCTOR 

256x4  FIELD  PROGRAMMABLE  ROM 
THESE  HAVE  BEEN  PROGRAMMED  BUT  MAY 
HAVE  HEAVY  VIRGIN  AREAS 

254  EA.(1-1000)    154  EA.(1000  up) 

IMSAI 

18080-1 K  MICROPROCESSOR  KITS 

RAM  4A-4  MEMORY  MODULE  KITS 

PIC  8  PRIORITY  INTERRUPT  &  RTC  KITS 

SIO  2-1  SERIAL  RS232  INTERFACE  KITS 

PIO  4-4  4  PARRALLEL  INPUT/OUTPUT  PORTS 

EXP  22  22SLOT  MOTHERBOARD 


n 


i 


FACTORY  PRIME  INTEL  2708'S 
!  !  1,024  BYTE  EPROM 

■  ■  UV  ERASEABLE 

$65.00(1)    $50.00(10)  $40.00(100) 


*  KSR  33  $450.  TELETYPES 

*  KSR  35'S  FROM  $500  to  $1200 

*  ASR  33'S  FROM  $600  to  $1 000 

*  ASR  35'S  FROM  $750  to  $2500 


"D"  CELL 
BATTERY  HOLDER 

654(1)    504(10)  404(100) 


m 


TO-3 
HEAT  SINK 

504(1)    404(10)  354(100) 


POLYMORPHIC  SYSTEMS 

POLY88  MICROPROCESSOR 

A  COMPACT,  POWERFUL  COMPUTER 

POLY  I/O  PROTOBOARD 

FULL  BUS  INTERFACE  LOGIC  PLUS  ROOM 

FOR  59-16  PIN  WW  SOCKETS 

VTI/64  VIDEO  DISPLAY  DRIVER 
128x48  GRAPHICS  &  KEYBOARD  INPUT 


C  ROMEMCO 

BYTESAVER  8K  EPROM  USES  2708 
D+7AIO  D/A  A/D  5  MICROSECOND  CONVERSION 
TV  DAZZLER  COLOR  TV  CONTROLLER 
JOYSTICKS  FOR  PROPORTIONAL  CONTROL 


^  Please  add  $2.00  Postage  and  Handling  on 
\  orders  under  $25.00.  Sent  UPS.  Add  $4.50 
^  Postage  and  Handling  on  Orders  under  $50.00. 


$10.00  MINIMUM  ORDER 
B  of  A  CARD  *  COD   *  PHONE  ORDERS 


Bps 


Sent  Post  Office. 


76  INTERFACE  AGE 


California  Residents  Add  6%  Sales  Tax 


CIRCLE  INQUIRY  NO.  45 


FEBRUARY  1977 


New 
Products 

COMPONENTS 

Low  Cost  PROM  Programmer  for  2704  & 
2708  PROM's 


Model  2708  PROM  programmer,  is  an  in- 
telligent programmer  that  will  program  all  major 
manufacturer's  2704  and  2708  PROM's. 


The  Model  2708  provides  an  RS232  and 
20mA  current  loop  interface  as  a  standard  fea- 
ture. This  allows  the  programmer  to  be  used  in 
conjunction  with  all  printing  and  CRT  type 
terminals,  a  paper  tape  reader/punch,  or  as  a 
peripheral  to  the  user's  computer  at  band  rates 
up  to  600. 

The  list  price  of  $850  makes  it  the  lowest 
cost,  highest  performance  programmer  avail- 
able. Because  it  has  it's  own  internal  micropro- 
cessor, the  Model  2708  provides  many  features 
and  capabilities  not  available  in  other  pro- 
grammers. 

1.  Full  editing  capability  allows  the  user  to 
move,  alter,  and  store  data  in  the  programmer's 
buffer  memory  in  the  user's  choice  of  number 
base,  binary,  octal,  decimal,  or  hexadecimal. 

2.  A  printing  terminal  can  provide  the  user 
with  hard  copy  of  the  PROM  data. 

3.  A  paper  tape  reader  can  be  used  to  input 
the  desired  data,  and  a  paper  tape  can  be  gen- 
erated to  store  the  PROM  data  for  later  use  and/- 
or  modification.  The  paper  tape  may  be  in  BNPF. 
BHLF.  binary,  or  ASCII  hexadecimal  format. 

4.  The  programmer  will  automatically  adapt 
to  the  terminal  baud  rate  up  to  600  baud. 

5.  The  user  can  modify  both  the  pulse  width 
and  the  number  of  loops  in  programming  a 
PROM,  when  used  in  conjunction  with  a  ter- 
minal. 

The  versatility  and  low  cost  of  the  Shepard- 
son  Model  2708  make  it  a  most  attractive  pro- 
duct to  the  user  of  2704's  and  2708  s. 

For  further  information  contact  R.C.  Shepard- 
son.  Microsystems  Inc..  20823  Stevens  Creek 
Blvd..  Bldg.  C4-H.  Cupertino.  CA  95014;  (408) 
257-9900. 

CIRCLE  INQUIRY  NO.  90 


7800-Type  Voltage  Regulators  from 
Signetics  Feature  Breakdown  Rating 
Guaranteed  to  60  Volts 

An  improved  series  of  7800-type  high  voltage 
regulators  with  a  breakdown  voltage  rating  50% 
higher  than  competitive  units  is  now  available 
from  Signetics. 


The  new  devices,  designated  78HV00.  are  1 
amp.  three-terminal  positive  voltage  regulators 
with  a  guaranteed  input  breakdown  of  60  volts. 
The  devices  directly  replace  standard  40-volt 
versions  of  7800  regulators.  The  higher  rating 
can  improve  system  reliability  and  permits  larger 
transients  and  AC  line  fluctuations  without  sys- 
tem damage 


The  78HV00  units  are  the  strongest  7800- 
type  regulators  available.  With  thermal  shutdown 
and  output  transistor  safe-area  compensation 
incorporated  in  the  monolithic  package,  they  are 
virtually  indestructable  in  standard  circuit  appli- 
cations. Output  current  with  adequate  heat  sink- 
ing is  typically  in  excess  of  the  specified  1  amp 
rating. 

The  78HV00  regulators  require  no  external 
components  in  fixed  voltage  regulator  appli- 
cations and  offer  internal  thermal  overload 
protection.  Units  in  the  line  are  available  with 
output  voltage  ratings  of  5,  6,  8,  12.  15.  18  and 
24  volts  in  either  TO-220  or  TO-3  packages. 

They  are  ideal  for  a  wide  range  of  appli- 
cations, including  local,  on-card  regulation  for  eli- 
minating power  distribution  problems  asso- 
ciated with  single-point  regulation.  The  78HV00 
devices  can  also  be  used  with  external  compo- 
nents to  obtain  adjustable  output  voltages  and 
currents,  or  as  the  power  pass  element  in  pre- 
cision regulators. 

Operating  junction  temperature  ranges  for  the 
new  units  are  available  to  —55  to  + 1  50  degrees 
C. 

The  78HV00  high  voltage  regulators  are  avail- 
able from  stock  through  Signetics  and  its  author- 
ized distributors.  As  an  example  of  pricing. 
78HV05CU  rated  for  5  volts  output  in  a  TO-220 
package  is  $1.56  in  quantities,  of  100-999: 
1  78HV24CDA  rated  for  24  volts  in  a  TO-3  pack- 
age is  $2.26  in  the  same  quantities. 

For  further  information  contact  Signetics.  81 1 
East  Argues  Avenue.  Sunnyvale.  CA  94086; 
(408)  739-7700. 

CIRCLE  INQUIRY  NO.  91 

Priority  Encoders 

Two  eight-line-to-three-line  low-power 
Schottky  priority  encoders  are  now  available 
from  Advanced  Micro  Devices. 

The  Am25LS148  performs  priority  decoding 
from  eight  inputs  and  provides  a  binary 
weighted  code  of  the  priority  order  of  the  inputs. 
This  device  is  available  in  a  16-pin  package  and 
offers  standard  totem-pole  outputs. 

The  Am25LS2513  is  a  gated  three-state  out- 
put version  of  the  Am25LS148  in  a  20-pin 
package.  This  device  is  particularly  useful  in  the 
design  of  priority  interrupt  systems. 

Both  devices  are  available  in  molded  and 
hermetic  DIP  and  ceramic  flat  packages.  Prices 
for  the  Am25LS148  start  at  $1.94  in  100-piece 
lots. 

For  further  information  contact  Advanced 
Micro  Devices,  Inc..  901  Thompson  Place.  Sun- 
nyvale. CA  94086;  (408)  732-2400. 

CIRCLE  INQUIRY  NO.  92 

Keyswitches 

Build  custom  keyboards  in  minutes  with  the 
KBM  series  keyswitch.  The  model  KBM  is  a 
low-cost,  long  life  keyboard  switch  ideal  for  use 
in  CRT  terminals,  data  entry  devices,  hex 
keypads,  touch  tone  encoders,  etc.  Semi-sealed 
construction  means  immunity  to  environmental 
contamination  and  the  gold  crosspoint  contacts 


insure  reliable,  low  bounce  switching  for  more 
than  10  million  operations.  Contacts  are  rated 
at  12  volts.  1  ma.  with  less  than  100  milliohms 
contact  resistance.  Mounting  through  an  easily 
fabricated  metal  panel  insures  precise  keycap 
alignment,  and  the  rugged  1/16"  terminals 
make  hardwired  prototypes  a  breeze. 


A  variety  of  keycap  sizes,  shapes,  colors,  and 
legends  are  available. 

For  further  information  contact  George  Risk 
Industries.  Inc..  GRI  Plaza.  Kimball.  Nebraska 
69145.  Telephone  (308)  235-4645.  TWX  910- 
620-9040. 

CIRCLE  INQUIRY  NO.  93 

Smallest  Coded  DIP  Switch 

"MICRO-DIP."  a  ten  position  coded  switch, 
occupies  only  one  half  of  a  14-pin  DIP  socket 
and  it  can  be  mounted/connected  directly  to  cir- 
cuit boards  by  hand  or  flow  soldering. 


Switch  settings  can  be  made  in  either 
direction  with  a  screwdriver.  Numbers  on  top  of 
switch  indicate  detent  positions.  MICRO-DIP 
can  handle  loads  up  to  100  milliamps  at  5VDC 
and  operate  in  a  temperature  range  of  —10°  to 
+  60°C. 

MICRO-DIP  contacts  are  gold-plated.  The 
.380"  x  .400"  x  .240"  high  glass  filled  epoxy 
housing  provides  a  dust  seal.  Available  codes  in- 
clude BCD  complement.  1  or  2  pole  2  throw 
and  1-pole  5-position  repeating  in  design. 
Priced  under  $1.00  in  10K  quantities;  6  week 
delivery  for  prototype  units. 

For  further  information  contact  EECO.  1441 
East  Chestnut  Av..  Santa  Ana,  CA  92701; 
Phone  "Switch  Products"  (714)  835-6000. 
CIRCLE  INQUIRY  NO.  94 

Tl  Regulators  Keep 
Output  Voltages  Constant 


Texas  Instruments  Incorporated  has  just 
sourced  the  very  popular  //A78M  and  fiA79M 
series  of  fixed  voltage  regulators. 


The  //A78M  series  are  positive  types,  in- 
cluding those  with  nominal  output  voltages  of 
5V.  6V.  BV.  12V.  15V.  20V  and  24V.  They  are 


FEBRUARY  1977 


INTERFACE  AGE  77 


Microcomputer 

Quay  80AI 
does  much  more 
with  the  Z-80. 


This  dynamite  new  microcomputer 
system  in  o  kit  moves  dato  tike  nothing 
else  on  the  market  Pun  ir  alone  or 
plug  ir  into  on  5100  bus  Aitalr/IAASAL 
For  solo  performance,  all  you  need  is 
*an  unregulated  power  supply  and  an 
I  I/O  device.  Plugged  inr  Quay  80AI  is  a 
CPU,  ROM,  5IO,  and  RAM  board -run 
any  5100  compatible  device,  QUT 
MORE  THAN  THAT.  Quay  SOAI's  Z-80 
CPU  opens  challenging  new  areas  of 
personal  computing, 

Feorures 

□  5100  bus  compatible,  Plugs  In  one  slot  of 
your  Airoir  or  IMSAK 

□  Z-80  w/2.5  MHz  clock. 

□  1  K  static  BAM. 

□  512  byte  (ROM)  monitor,  Comes  up 
running.  Inspect,  alter,  dump  and  load 
memory;  ser  breakpoint;  jump  to  user 
program.  Handles  serial  I/O  or  keyboard 
input  including  setting  baud  rate. 

□  4  UVEPROM  (2706)  sockets. 

O  Serial  I/O.  R5  202  and  20  ma  interface, 

□  Parallel  keyboord  input,  Accepts  stan- 
dard ASCII  keyboard. 

□  UVEPROM  programmer.  Program  2708 
type  UVEPRQMs, 

□  2  phase  dock  and  sync.  Run  51 00  com- 
patible peripherals. 

□  158  (nsrructions.AH  76  3080  instructions 
j     plus  80  new  powerful  instructions, 

□  On  board  voltage  regulators, 

Quay  80AI  in  a  kit  is  £450;  factory  as- 
sembled, $600.  Send  for  complete 
details,  Or  for  fast  action  coll  201- 
681-8700. 

Mosrercftarge  and  BonkAmerfcord  (accepted:  COO  with 
1/3  depQSir  NJ.  residents  add  5%  Mies  rax.  frlee  does 
no*  indude  shipping  and  handling. 

Dealer  inquiries  tnvired 


P.O.  Dox  386,  Freehold,  NJ,  07728 
Phone:  201-661-8700 


78  INTERFACE  AGE 


available  in  the  TO-220  KC  package  with  an 
operating  temperature  range  of  0°C.  to  70°C. 

The  /xA79M  series  are  negative  types  in  the 
same  voltage  ranges.  Both  series  are  available 
in  the  TO-220  KC  package  and  can  deliver  up  to 
500  milliamperes  of  output  current. 

The  /fA78M  and  ;*A79M  series  are  inter- 
changeable to  the  Fairchild  series  with  the  same 
designation. 

Prices  for  100  units  are  as  follows:  /^A78M 
series:  $1.09  each;  /*A79M  series:  $1.09  each. 

For  further  information  contact  Texas 
Instruments.  Inc..  Inquiry  Answering  Service. 
P.O.  Box  5012.  M/S  308,  (Attn:  Bulletin  Nos. 
DL-S  7612403  and  DL-S  7612405.  June 
1976).  Dallas.  TX  75222. 

CIRCLE  INQUIRY  NO.  95 


EQUIPMENT 


UC  1800  Microcomputer 

The  UC  1800  is  completely  assembled  and 
tested.  As  such,  it  has  important  design  cost  sav- 
ing advantages  to  industrial  users  contemplat- 
ing the  use  of  microprocessors  in  their  products. 


The  comprehensive  instruction  manual,  simple 
straightforward  software  instructions,  self-con- 
tained keyboard,  and  four  digit  hexadecimal  dis- 
play provide  a  package  which  promotes  rapid 
training  and  system  development. 

All  users  will  benefit  from  the  growth  poten- 
tial incorporated  in  the  UC  1800.  External  bus 
access  allows  future  connection  to  a  host  of  peri- 
pheral devices  and  add-on  memory  which  can 
provide  full  mini-level  computer  power. 

The  user  of  the  OEfVl  version  will  find  such 
features  as  full  military  temperature  range,  low 
power  CMOS,  single  3  to  15  volt  supply  and  TTL 
compatibility  are  decided  advantages  in  a  wide 
range  of  product  applications. 

The  outstanding  features  are:  Low  cost;  Built- 
in  keyboard  programming;  Digital  (hexadecimal) 
display  for  address,  memory  contents,  and  I/O 
port;  Front  panel  control  of  Interrupt,  DMA,  I/O 
Flag;  256  byte  RAM  expandable  to  65.5  K  bytes 
RAM  or  ROM  externally;  Low  power  consump- 
tion; Special  circuit  saves  memory  content  when 
unit  is  turned  off;  Single  power  supply;  Parallel 
and  serial  I/O  data  line  capability;  Available  as 
single  PC  board  microcomputer  with  or  without 
on-board  power  supply  for  OEM  applications. 

The  comprehensive  documentation  package 
of  230  +  pages  included  with  the  UC  1800  pro- 
vides extensive  tutorial  material  with  training 
aids  on  the  theory  and  operation  of  digital  com- 
puters. Both  hardware  and  software  are  covered. 
Step  by  step  instructions  are  given  on  program- 
ming. Programs  for  machine  checkout  and  appli- 
cations program  examples  are  included. 

Software  included  with  the  UC  1800  con- 
tains KEYBUG'".  a  keyboard  handler  and  debug 
program  which  provides  powerful  software  tools 
for  generating  and  debugging  your  own  pro- 
grams. 

A  software  library  is  available  which  contains 
diagnostics,  useful  macro  building  block  rou- 
tines, and  games. 

Option  001  —  Automatically  recharged  inter- 
nal battery.  Allows  program  memory  to  operate 


for  up  to  four  hours  after  power  failure,  $22.50. 

Option  002  —  120/230  VAC  50-500  Hz 
input  power,  specify  which  voltage  is  desired. 
$15.00. 

Also  available  in  kit  form.  $395.00. 

For  further  information  contact  Infinite  Incor- 
porated. 1 924  Waverly  Place.  Melbourne.  FL 
32901;  (305)  724-1588. 

CIRCLE  INQUIRY  NO.  96 


Designer  Evaluation  Kit  for  Signetics 
8X300  Bipolar  Microprocessor 

An  evaluation  kit  that  allows  design  engineers 
to  evaluate  the  Signetics  8X300  bipolar  micro- 
processor for  planned  applications  is  now  avail- 
able from  Signetics. 


The  single-board  evaluation  kit  includes  all  the 
elements  a  designer  needs  to  judge  the  suit- 
ability of  the  8X300  for  system  applications.  The 
unit  includes  the  250-nanosecond  bipolar  micro- 
processor CPU.  four  input/output  (I/O)  ports  for 
interfacing  external  devices,  256  bytes  of  work- 
ing data  storage.  Programmable  read  only 
memory  (PROM)  devices  in  the  kit  are  prepro- 
grammed with  input/output  control  logic,  ran- 
dom access  memory  (RAM)  control,  and  RAM 
diagnostic  programs. 

The  microprocessor  kit.  designated  8X- 
300KT100SK.  is  intended  to  familiarize  design 
engineers  with  the  performance  advantages  of 
the  8X300,  particularly  for  control  and  data 
movement  applications. 

The  8X300  features  a  1  3-bit  address  bus  for 
sellcting  instructions  from  program  storage,  and 
a  separate  input  bus  for  entering  1  6-bit  instruc- 
tion words.  With  the  8X300,  the  entire  process 
of  data  input,  shifting,  processing  and  output  is 
accomplished  in  a  single  instruction  cycle  of  250 
nanoseconds. 

The  board  layout  of  the  kit  allows  for  var- 
iations and  expansions  of  the  basic  design.  All 
signals,  for  example,  can  be  conveniently  trans- 
ferred off  the  board,  and  a  wire-wrap  area  is  pro- 
vided for  additions  to  the  board  circuitry.  Addi- 
tions may  include  memory,  interfaces  or  special 
circuits  for  specific  user  requirements. 

The  8X300  evaluation  kits  are  available  from 
stock  through  Signetics  and  its  authorized  distri- 
butors. Unit  price  of  the  kit  is  $299.00. 

For  further  information  contact  Signetics.  81 1 
East  Arques  Ave..  Sunnyvale.  CA  94086;  (404) 
739-7700. 

CIRCLE  INQUIRY  NO.  97 


Communications  Processor 

The  40  Series  Communications  Processor  is 
designed  to  perform  such  functions  as  data 
concentration,  channel  contention,  message 
routing,  polling  control,  speed  and  code  conver- 
sion, protocol  conversion,  and  voice  response. 
The  program  is  executed  in  nonvolatile  Program- 
mable Read  Only  Memory  (PROM),  and  need  not 
be  "reloaded." 

FEBRUARY  1977 


The  basic  system  is  self-contained  on  a  single 
card  Central  Control  Module,  including  a  LED 
display  and  10-position  function  switch  for  diag- 
nostic test  or  system  monitoring.  Modular 
construction  permits  cost-effective  single-chan- 
nel or  multi-channel  configurations,  with  CPU, 
RAM  buffer  storage,  PROM  control  firmware, 
synchronous  and  asynchronous  communication 
interfaces,  voice  synthesizer  channel  modules 
and  optional  operator's  console  consisting  of 
CRT  and  keypad. 

Additional  features  include  an  Auto-Restart 
Timer  and  redundant  common  logic  and  power 
supplies  for  maximum  reliability.  The  Voice  Syn- 
thesizer produces  clear,  natural,  male  or  female 
speech. 

Normally  supplied  in  turnkey  communi- 
cations controller  systems  complete  with  firm- 
ware, the  40  Series  is  also  available  to  OEM's 
with  a  complete  Program  Development  System 
to  facilitate  firmware  development.  Prices  start  at 
$1800,  with  delivery  of  45  days  ARO. 

For  further  information  contact  Roger  Evans, 
Micom  Systems  Inc.,  9551  Irondale  Avenue, 
Chatsworth,  CA  9 1 3 1  1 ;  (2 1  3)  882-6890,  TWX 
910-494-4910. 

CIRCLE  INQUIRY  NO.  98 


fxC  Hardware  for  the  OEM 

Supporting  M6800-based  equipment 
development,  are  chassis,  card  cages  and  a 
power  supply  for  the  MICROMODULE'" 
products.  Two  card  cages  are  available;  one 
with  5  card  slots,  the  other  with  10  card  slots. 
Both  card  cages  have  mother  boards  that  are 
pin  compatible  with  the  MICROMODULES  and 
all  of  the  EXORciser  modules. 


The  cages  can  be  mounted  on  five  different 
axes.  The  unit  price  of  a  10-card  cage  is 
$147.00;  a  5-card  cage  sells  for  $98.00. 

For  further  information  contact  Motorola 
Semiconductor,  Inc.,  P.O.  Box  20912,  Phoenix, 
AZ  85036;  (602)  244-6900. 

CIRCLE  INQUIRY  NO.  99 


Control  Store  Sequencer  Simplifies  Bipolar 
Microprocessor  Design 

The  random  logic  needed  to  implement  micro- 
program sequencing  in  bipolar  microprocessors 
can  now  be  replaced  by  a  new  control  store  se- 
quencer from  Signetics.  Designated  8X02.  the 
new  unit  forms  a  powerful  microprogrammed 
control  section  for  computers,  controllers  or  se- 
quenced logic  elements,  when  combined  with 
standard  Read  Only  Memory  (ROM)  or  Program- 
mable ROM  (PROM). 

FEBRUARY  1977 


The  Signetics  8X02  is  a  low-power  Schottky 
LSI  device  designed  for  use  in  high-performance 
microprogrammed  systems.  The  basic  function  of 
the  8X02  is  to  control  the  fetch  sequence  of 
microinstructions.  The  unit  is  capable  of  address- 
ing up  to  1k  words  of  microprogram,  expand- 
able to  any  microprogram  size  by  conventional 
paging  techniques.  External  page  registers,  when 
they  are  provided,  can  be  controlled  entirely  or 
partially  by  the  microprogram. 

The  1  k  addressing  capability  is  not  available  in 
other  units,  nor  is  the  8X02  subroutine  nesting 
capability.  The  Signetics  unit  has  a  1k  address- 
ing capability  and  a  8X02  subroutine  nesting 
capability.  A  four-way  stack  register  file  and 
offers  conditional  nesting  for  branching  to  a  sub- 
routine or  for  automatic  interrupt  handling. 

The  8X02  is  easy  to  use,  requiring  just  three 
control  lines  for  the  three-bit  command  code, 
versus  from  9  to  1 8  lines  for  alternate  units. 
Control  instructions  include  Increment,  Test  and 
Skip,  and  Conditional  branch  to  subroutine.  The 
8X02  uses  a  popular  28-pin  plastic  package. 

The  low-power  Schottky  process  employed 
for  the  sequencer  features  good  performance  for 
both  medium-scale  computer  applications  and 
controllers.  Chief  applications  are  expected  to  be 
in  central  processing  units  (chiefly  mini- 
computers); peripheral  controllers  such  as  high 
speed  magnetic  disc  storage  units,  floppy  discs 
and  tape  drives;  vector  generators  for  all  types  of 
CRT  display  terminals;  and  simple  step  con- 
trollers of  various  kinds.  The  8X02  can  be  used 
for  any  system,  however,  that  requires  sequenc- 
ing of  instructions. 

Cycle  time  for  the  8K02  is  80  nanoseconds. 
The  unit  operates  with  a  +5-volt  power  source 
with  power  consumption  of  1000  milliwatts.  The 
unit  is  totally  compatible  with  all  bipolar  TTL 
logic  elements. 

The  control  sequencer  architecture  is  shown 
in  the  schematic.  The  address  register  consists  of 
ten  D-type  edge-triggered  flip  flops  with  a  com- 
mon clock.  The  address  register  can  be  loaded 
with  different  address  sources  under  control  of 
the  three  address  control  lines  and  one  test  in- 
put line. 

The  four-register  stack  input  line  with  a  two- 
bit  stack  pointer  respond  automatically  to  oper- 
ations requiring  a  PUSH  (write  to  stack  register 
file)  or  POP  (read  stack  register  file).  The  file  is 
organized  as  a  four-word-by-ten  bit  matrix  and 
operates  on  a  last  in  first  out  basis.  The  stack 
pointer  operates  as  an  up/down  counter. 

The  N8X02XL  Control  Store  Sequencer  is 
available  from  stock  through  Signetics  and  its 
authorized  distributors.  Pricing  is  about  $19.45 
in  100  quantities. 

For  further  information  contact  Signetics,  81  1 
East  Arques  Avenue,  Sunnyvale,  CA  94086; 
(408)  739-7700. 

CIRCLE  INQUIRY  NO.  100 

Datac  1000  Computer, 
Controller  and  Tutorial  Card 

The  Datac  1000  card  is  available  in  two 
configurations;  tutorial  and  populated.  The 
tutorial  has  the  folowing  features:  The  MOS 
Technology  6502  microprocessor  chip;  one 
page  of  RAM  (256  bytes);  one-bit  output  latch; 
8  data,  8  address  and  9  control  touch  pads  (our 
method  of  entering  data  with  elegance  and 
simplicity);  8  data  and  8  address  LEDs;  single- 
cycle  operation. 


Microprocessor 
Quay  80MPS. 
For  serious 
hobbyists. 

Quay  80MP5  is  not  designed  for  the 
casual  hobbyist.  Only  if  you're  serious 
about  your  personal  computing, 
should  you  find  out  about  Quay 
SQMPS's  features,  capabilities,  and 
options.  Only  if  you  want  to  break  free 
from  hobby-class  microprocessors  and 
enter  a  great  new  world  of  sophis* 
fleeted  computing  experiences, 
should  you  get  into  the  Quay  8QMP5. 

Features 

□  Single  PC  boord.  16  pin  dip  connectors 
(no  costly  backplane  or  edge  con- 
nectors.) 

□  Z-80  CPU.  1 56  instructions,  2.5MKz  clock. 

□  4K  dynamic  RAM,  Expands  to  16K  on 
board  (Z-60  refreshes  w/o  loss  of  thru- 
put). 

□  1K  UVEPROM  monitor,  Inspect,  alter, 
dump,  and  load  memory;  set  break- 
points; trace  ond  single-step  debugging; 
handfes  serial  I/O. 

□  7  additional  UVEPROM  sockets. 

□  4  6-bft  parallel  I/O  ports.  Vectored  in- 
terrupt (2  Z-60  PtO's,  expands  to  4). 

□  i  socket  for  Z-60  4  channel  counter 
timer. 

□  1  UART.  RS232  6  20  mo  interface. 

□  UVEPROM  programmer  (2708). 

□  Fully  buffered  address,  data  and 
control. 

Quay  60MPS  is  $695,  assembled  and 
rested,  Send  for  complete  derails.  Or 
for  fast  action,  Call  201-681-8700. 

Mo  surcharge  and  OankAnwriccrrd  accepted,  COO  wtlh 
1  /0  depasir.  K J.  resident  add  5%  soles  icul  Price  does 
not  Include  shipping  and  handling, 

Deafer  inquiries  invited. 


P.O.  Box  386,  Freehold,  N.J.  07728. 
Phone:  201-681-8700 


CIRCLE  INQUIRY  NO.  27 

INTERFACE  AGE  79 


If  you  want  a  microcomputer 
with  all  of  these  standard  features  •  •  • 


•  8080  MPU  (The  one 
withgrowing  soft- 
ware support) 

•  1024  Byte  ROM 
(With  maximum  ca- 
pacity of  4K  Bytes) 

•  1024  Byte  RAM 
(With  maximum 
capacity  of  2K 
Bytes) 

•TTYSeriaM/O  , 
•EIA  Serial  I/O 

•  3  parallel  !/Os 
•ASCII/Baudot 
terminal  com- 
patibility withTTY machines  or  video  units 

•  Monitor  having  load,  dump,  display,  insert 
and  go  functions 


•  Complete  with  card 
connectors 
•  Comprehensive 
User's  Manual,  plus 
Intel  8080(Jser's 
Manual 
•  Completely 
factory  assembled 
and  tested— not 
c  kit 

•  Optional  ac- 
cessories: Key- 
board/video 
display,  audio 
cassette  modem 
interface,  power  supply,  ROM  programmer 
and  attractive  cabinetry . . .  plusmoreoptions 
to  follow.  The  HAL  MCEM-8080.  $375 


•  •  .then  let  us  send  you  our  card. 


HAL  Communications  Corp.  has 
been  a  leader  in  digital  communi- 
cations for  over  half  a  decade. 
The  MCEM-8080  microcomputer 
shows  just  how  far  this  leadership 
has  taken  us... and  how  far  it 
can  take  you  in  your  applications. 
That's  why  we'd  like  to  send 
you  our  card— one  PC 
board  that  we  feel  is  the 
best-valued,  most  complete 


microcomputer  you  can  buy.  For 
details  on  the  MCEM-8080,  write 
today.  We'll  also  include  compre- 
hensive information  on  the  HAL 
DS-3000  KSR  microprocessor- 
based  terminal,  the  terminal  that 
gives  you  multi-code  compati- 
bility, flexibility  for  future 
changes,  editing,  and  a 
convenient,  large  video 
display  format. 


HAL  Communications  Corp. 
Box  365, 807  E.  Green  Street,  (Irbana,  Illinois  61801 
Telephone  (217)  367  7373 


VECTORBORD®  TENTH/TENTH  HOLES  MOUNT: 

DIPS,  SIPS,  KLIPS,  CHIPS 

PINS,  POSTS,  POTS,  PADS     Save  Work  -  Time  -  Money 

RCs,  ICs,  PCs,  SCs 


Pattern  11 H" 


-  0.7' 


*  #  *  *  m 

-r  m  m  • 


T28  V 

Fits 

.062*'  If 

Holes  ? 

8800V  MICROPROCESSOR  PLUGBORD 


*  •  *  •  • 

•  •  •  •# 

Dia. 


{Component  Side  with  Added  Sockets) 
Has  100  contacts  on  0.1"  centers,  is  10"  wide  by  5.313" 
high.  Has  heavy  tinned  back-to-back  buses,  over all  0. 1 " 
spaced  0.042"  hole  pattern.  Socketed  models  available. 


WIDE     SELECTION     OF     SIZES     AND  MATERIALS 

TERMINALS-  Complete  selection  of 
wire  wrappable  and  solderable  push-in 
terminals  for  0.042"and  0.062"  dia.  holes 
—  plus  wiring  tools  available. 


MICRO-VECTORBORD®  "P"  -  0.042" 
holes  match  DIP  leads.  Epoxy  glass,  or 
glass  composite,  paper,  copper  clad.  Also 
1  /64"to  1  /1 6"  thick  and  1  0"max.  width. 


VECTORBORD  "H"  -  For  larger  termi- 
nals, leads.  Available  in  epoxy  glass  sheets 
4.8"  to  8.5"  wide  and  8.5"  to  17"  long. 
1/32"  and  1/16"  thick. 


PLUGBORDS  -  For  solder  or  wrap  wire 
construction  2.73"  to  10"  wide  and  4.5" 
to  9.6"  long.  With  holes  .1"x  .1",  .1"x 
.2",  .2"x  .2",  or  loaded  with  IC  sockets. 


80  INTERFACE  AGE 


Send  for  complete  literature 

ELECTRONIC  COMPANY,  INC. 

1  2460  Gladstone  Ave.,  Sylmar  CA  91342 
(213)  365-9661  -  TWX  (910)  496-1539 

CIRCLE  INQUIRY  NO.  34 


is  rJi  mm 

in  1 1  iUiwiMl 


In  the  fully  populated  form  the  Datac  1000  is 
a  computer  with  the  following  features:  full  16- 
bit  addressing;  total  of  1  K  bytes  of  RAM  (8x- 
2111);  sockets  for  2K  of  UV  ROM  (2x2708)  for 
use  as  a  dedicated  controller;  MOS  Technology 
6530-004  teletype  I/O  monitor  (in  ROM)  plus 
64  bytes  of  RAM  plus  8-bit  I/O  port;  complete 
interface  to  teletype  current  loop  or  EIA  RS 
232;  high-speed  cassette  interface  using  the 
MC6850  ACIA.  for  storing  programs; 
6820/6520  PIA  providing  two  8-bit  parallel  I/O 
ports;  fully  buffered  tri-state  busses;  power-on 
reset  or  restart;  on-board  address  decoding  for 
expansion;  ribbon  connector  for  I/O  and  edge 
connector  for  expansion. 

The  board  is  designed  with  capability  for  full 
expansion  as  described  above,  and  for  popu- 
lating to  a  lesser  degree  for  use  as  a  controller. 
The  Datac  1000  E  fully  populated  card  (less 
EROM)  is  available  assembled  and  tested  with 
power  supply  and  a  manual  in  single  quan- 
tities for  $345.00.  Availability  is  stock  to  60 
days. 

For  further  information  contact  DATAC 
Engineering,  P.O.  Box  406,  Southampton,  PA 
18966;  (609)  854-7852. 

CIRCLE  INQUIRY  NO.  101 


Precision  Forty-Channel  CB/RF  Generator 
Achieves  Crystal  Accuracy  in  Low-Cost 
Unit 

The  RF  Generator  designated  the  Model  256 
for  40  channel  CB  tranceiver  service  incor- 


41571 


porates  features  of  particular  benefit  to  CB  ser- 
vice technicians.  Five-band  frequency  tuning 
covers  channels  1  through  40  on  an  expanded 
tuning  range  for  easy,  precise  channel  selection. 
Frequencies  of  100  kHz  through  16  MHz  are 
covered  on  the  other  four  bands  to  provide  all  IF 
requirements  including:  455  kHz,  10.7  MHz.  and 
any  other,  current  or  future. 

Precision  frequency  selection  is  accom- 
plished by  connecting  the  counter  output  jack  to 
a  frequency  counter  for  continuous  monitoring. 
By  use  of  the  counter  output  in  conjunction  with 
a  frequency  counter  crystal-controlled  accuracy 
is  available  without  the  usual  high  cost. 

A  calibrated/attenuated  output  control  pro- 
vides RF  signal  output  of  100,000  f.i\/  down  to 
less  than  1  jzV  for  receiver  sensitivity  checks.  The 
attenuated  output  is  variable  in  20  dB  steps  and 
by  a  20  dB  continuously-variable  control  cali- 
brated in  microvolts. 

Internal  modulation  at  a  frequency  of  1kHz  is 
variable  from  0  to  100%,  calibrated  at  30%. 
Provision  is  also  made  for  use  of  external  modu- 
lation at  frequencies  from  20  Hz  to  10kHz 
through  front-panel  out/in  jacks.  When  the  Audio 
Output  function  is  selected  a  1  kHz  audio  signal 

FEBRUARY  1977 


is  available  at  these  same  front-panel  out/in 
jacks. 

The  Hickok  Model  256  CB/RF  Generator  is 
available  through  Hickok  distributors.  Sug- 
gested retail  price  is  $199.00. 

For  further  information  contact  Marketing  Ser- 
vices Department.  Hickok  Electrical  Instrument 
Company,  10514  Dupont  Avenue,  Cleveland. 
Ohio  44108. 

CIRCLE  INQUIRY  NO.  102 

Teletype  Mobil  Cart 

The  TTS  Cart  attachment  adds  mobility  to 
any  Teletype  terminal.  It  is  affixed  to  or  removed 
from  any  Teletype  in  30  seconds.  It  offers  hand 
truck-like  leverage  and  easy  movement  over 
door  jambs,  carpet  edges  or  even  stairways. 
When  the  terminal  and  stand  are  in  the  upright 
operating  position  the  wheels  remain  suspended 
above  the  floor  to  insure  fixed  installation 
stability. 


9 


The  mobilized  terminal  may  be  rolled  to  any 
desirable  location  with  ease. 

Made  of  cold-drawn  1"  steel  tubing,  high- 
tensile  steel  alloy  spring  clamps,  8"  x  1  W  ball- 
bearing wheels.  Size:  height  38";  width  32". 
Weight:  12  pounds.  Single  unit  price:  $59.50. 

For  further  information  contact  TTS.  2928 
Nebraska  Ave..  Santa  Monica,  CA  90404;  (213) 
829-261  1. 

CIRCLE  INQUIRY  NO.  103 


Electronic  'Game-Playing'  Organ 

A  computer-driven  electronic  organ  that 
either  plays  your  favorite  song  or  teaches  you 
how  to  play  it  has  been  developed. 


The  organ  is  one  of  three  electronic  "game- 
playing"  devices  that  can  be  operated  simul- 
taneously by  a  single  computer  —  in  this  case, 
a  Computer  Automation  minicomputer,  one  of 
the  smallest  on  the  market. 

The  organ  is  controlled  by  a  Computer 
Automation  NAKED  MILLI  LSI-3/05.  a  com- 
pact, general-purpose  machine  priced  as  low  as 
$395. 

In  the  case  of  the  organ-player,  the  NAKED 
MILLI  is  literally  easy  enough  for  a  child  to 
operate.  For  example,  in  order  to  learn  how  to 
play  a  particular  song,  the  operator  presses  a 
start  button  and  lights  are  illuminated  over  the 
organ  keys  to  be  pressed,  in  timed  sequence.  An 
automatic  recording  and  playback  feature 
enables  the  user  to  hear  the  notes  he  has 
played.  He  also  has  the  option  of  simply  playing 
any  of  the  pre-recorded  selections  by  pressing 
the  appropriate  button. 

For  further  information  contact  Computer 
Automation.  18651  Von  Karman.  Irvine.  CA 
92713;  (714)  833-8830;  TWX  910-595-1767 
CIRCLE  INQUIRY  NO.  104 

FEBRUARY  1977 


"SC/MP-M"  Microprocessor  —  Higher 
Speed,  Lower  Power  Consumption,  Single 
Voltage  Source 

Samples  are  now  available  of  a  new  N- 
channel  MOS  version  of  the  "SC/MP"  8-bit 
single-chip  microprocessor  that  is  twice  as  fast 
and  which  uses  only  one-fourth  as  much  power 
as  the  P-channel  version. 


The  "SC/MP-H"  microprocessor  has  all  of  the 
features  of  the  older  version  while  offering 
several  advantages  over  the  P-channel  device. 

Power  consumption  of  'SC/MP-II'  is  less  than 
200  milliwatts,  considerably  lower  than  the 
approximately  800  milliwatts  consumed  by  the 
earlier  version  and  the  lowest  power  consump- 
tion of  any  N-channel  MOS  processor  on  the 
market  today.  Another  significant  improvement 
is  that  they  have  eliminated  the  need  for  two 
power  sources.  The  'SC/MP-M'  chip  needs  only  a 
single  source  of  +5  volts  for  operation,  which  is 
a  great  improvement  over  the  first  model  which 
required  two  power  sources  —  a  +5  volt  and  a 
—  7  volt  supply. 

The  speed  of  "SC/MP-II"  is  twice  that  of  the 
P-channel  model.  The  new  version  takes  one 
microsecond  to  complete  a  microcycle.  and  typi- 
cal instruction  execution  time  is  5  micro- 
seconds. 

The  "SC/MP-II"  is  fully  compatible  with  its 
predecessor  in  terms  of  pin  configuration,  object 
code,  and  software,  and  with  slight  modifica- 
tions to  the  crystal  frequencies,  it  will  be  com- 
patible with  all  of  the  "SC/MP"  support  equip- 
ment, such  as  the  "SC/MP  KIT"  in  the  U.S.A., 
the  "SC/MP  INTROKIT"  in  Europe,  the  "SC/MP 
LCDS"  (Low-Cost  Development  System),  and 
the  "SC/MP  Keyboard  Kit"  which  eliminates  the 
need  for  a  teletype  machine. 

The  clock  oscillator,  which  is  located  on  the 
"SC/MP-II"  chip,  is  designed  to  use  very 
inexpensive  television-type  crystals  of  3.58  or 
4.0  megahertz.  As  an  alternative  to  a  crystal,  the 
user  may  drive  the  clock  with  a  standard  TTL 
(transistor-transistor  logic)  timing  system.  In 
addition  to  the  clock,  all  of  the  inputs  and  out- 
puts are  compatible  with  TTL  devices  and  can 
also  be  easily  interfaced  with  MOS  and  CMOS 
circuitry. 

Sample  quantities  of  the  "SC/MP-II"  micro- 
processor are  immediately  available  from  the  fac- 
tory. The  price  for  a  single  sample  is  $1  7.76,  and 
production  quantities  of  more  than  2,000  will 
sell  for  approximately  the  same  prices  as  the  P- 
channel  "SC/MP."  Prices  will  be  considerably 
lower  in  1977  because  we  will  then  be  able  to 
offer  the  'SC/MP-II'  in  a  plastic  package. 

For  further  information  contact  National 
Semiconductor.  2900  Semiconductor  Drive, 
Santa  Clara.  CA  95051 ;  (408)  737-5000,  TWX 
910-339-9240. 

CIRCLE  INQUIRY  NO.  105 


Quad  OP-AMP  Flip-chip 

The  popular  MC3503  type  quad  operational 
amplifier  is  now  available  in  flip-chip  form  as 
well  as  in  conventional  chip  form  and  a  variety 
of  plastic  and  hermetic  packages.  The  flip-chip 
consists  of  a  silicon  chip  with  solder  bumps  (90- 
10  solder  on  a  chrome-copper-gold  base)  on  the 
geometry  surface  to  provide  easy  mechanical 
mounting  and  electrical  connection. 


NOW 
TRY 
US! 


The  word  is  getting  around  . . . 
the  Byte  Shop  of  Pasadena  is 
a  remarkable  exception  to  the 
rule  among  computer  stores. 
We  offer  a  truly  delightful 
environment  supported  by 

*  REAL  courtesy 

*  REAL  expertise 

*  EXPERT  service 

*  GREAT  classes 

*  EIGHT  demo  systems 
and  of  course,  a  wide  variety 
of  low-priced  computer  hard- 
ware, software,  tools  and 
supplies.    Come  see  what  the 
happy  rumors  are  all  about  . . , 
then  compare  our  store  with 
ANY  other! 


BYTE 
ShQP 


The  BYTE  SHOP  of  Pasadena 
496  South  Lake  Avenue 
Pasadena,  California  91101 
Telephone:       (213)  684-3311 

-    HOURS  - 

Tuesday  -  Saturday:  12-9 

Sunday:  12-5 

Monday:  closed 

Mastercharge  Bankamericard 
American  Express 


CIRCLE  INQUIRY  NO.  42 

INTERFACE  AGE  81 


Electrically  the  MCCF3503/3403/3303  offer 
much  better  amplifier  matching  than  four  single 
operational  amplifiers.  Each  amplifier  has  char- 
acteristics similar  to  that  of  the  MC1741  and  in 
addition  is  designed  with  a  Class  AB  output 
stage  which  minimizes  cross-over  distortion. 

The  flip-chip  is  offered  at  the  following  prices 
(in  quantities  of  100-900).  MCCF3303  (-40°C 
to  +85°C)  $2.25;  MCCF3403  (0  to  70°C) 
$2.50;  MCCF3503  (~55°C  to  +125°C)  $6.75. 


For  further  information  contact  Linear 
Marketing  (602)  962-2122  or  the  Technical  In- 
formation Center.  Motorola  Semiconductor  Pro- 
ducts, Inc..  Box  20294.  Phoenix,  Arizona  85036. 

CIRCLE  INQUIRY  NO.  106 


Cases  Enhance 
Custom-Designed  Instruments 

This  line  of  economical  enclosures,  in  two 
sizes  and  numerous  attractive  colors  and 
finishes,  gives  desk-top  instruments  an  ap- 
pearance contemporary  with  sophisticated 
electronic  components  and  systems.  Designated 
Cono-Cases  by  Vector  Electronic  Company,  the 
WA  series  enclosures  incorporate  a  ten-degree 
sloped  front  panel  and  an  optional  smoked- 
plastic  facing  for  behind-panel  indicators.  A 
recessed  rear  panel  protects  input/output  con- 
nectors. 


The  enclosures,  assembled  from  two 
interlinked  channels,  allow  easy  access  to  cir- 
cuits, accessories  and  wiring.  The  lower  section 
forms  a  chassis  integrated  with  front  and  rear 
panels.  Elongated  holes  in  the  bottom  and  rear 
panel  provide  superior  convection  cooling.  The 
upper  section  serves  as  top  and  side  panels.  The 
WA1  enclosures  are  1 1  inches  wide  by  8  inches 
deep  by  4  inches  high,  giving  307  cubic  inches 
of  circuit  space. 

The  WA2  enclosures  are  14  inches  wide  by 
11  inches  deep  by  4  inches  high,  providing  a 
560  cubic  inch  working  volume.  Construction  of 
0.062  inch  (14  gauge)  aluminum  insures  ade- 
quate support  for  transformers,  heat  sinks  and 
other  heavy  components. 

Cono-Cases  are  available  with  clear  anodize 
satin  finish,  or  with  blue  or  walnut  grained  vinyl 
on  the  cover.  Other  colors  available  in  anodize, 
vinyl  or  paint  on  request. 

The  WA  Series  enclosures  are  priced  from 
$12.95  to  $19.70,  depending  on  model  and 
finish.  They  are  available  off-the-shelf  from  Vec- 
tor and  will  be  available  through  the  firm's 
distributors  throughout  the  United  States  and 
Canada. 

For  further  information  contact  Vector 
Electronic  Company,  12460  Gladstone  Ave.. 
Sylmar.  CA  91342;  (213)  365-9661;  TWX 
(910)  496-1539. 

CIRCLE  INQUIRY  NO.  107 


Low  Cost  Logic  State  Analyzer 

A  logic  state  analyzer,  priced  at  $272, 
including  shipping  and  handling,  places  data 
domain  analysis  within  the  reach  of  smaller 
companies,  educational  institutions  and  hobby- 
ists who  previously  could  not  afford  the  luxury 
of  this  useful  development  and  troubleshooting 
technique. 


The  instrument,  dubbed  the  Model  100A.  is 
designed  to  operate  with  an  ordinary  oscillo- 
scope and  incorporates  many  of  the  features 
found  on  much  more  expensive  analyzers  in- 
cluding: a  16-word  truth  table  display  of  ONE's 
and  ZERO's;  eight  input  channels  with  eight 
corresponding  trigger  word  switches  which  can 
individually  be  set  to  "1,"  "0,"  or  "X"  (don't 
care);  an  internal  data  memory  for  post-trigger 
data  collection;  hexadecimal  and  octal  formats; 
and  both  static  and  dynamic  display  presen- 
tations. These  features  permit  the  Model  100A 
to  be  used  in  typical  logic  state  analysis  appli- 
cations such  as  tracing  computer  program  flow, 
examining  the  contents  of  ROMs  and  other 
memories,  checking  counter  and  register 
operations,  observing  I/O  sequences,  and 
monitoring  micromemory  address  steps. 

The  Model  100A  can  be  used  directly  with  a 
variety  of  logic  families  including  TTL.  Schottky, 
MOS,    CMOS,   and   DTL.   Connection   to  the 

FEBRUARY  1977 


Disc/3 


TURNKEY  SOFTWARE  SPECIALISTS 


FAST 

MICROPROCESSOR 

IMSAI  8080  microcomputer,  top  o?  the 
line;  rugged  industrial  quality;  28  amp 
power  supply;  22  slot  mother  board; 
fully  expandable  to  64K;  will  support 
floppy  disk  drive,  terminal,  audio-tape 
cassette  input  device,  300  Ipm  printer. 


$659.95* 


EASY 

TO  ASSEMBLE 

Lear-Sigler  ADM-3  terminal  kit  with 
NEW  DCA  (direct  cursor  addressing) 
24  lines  x  80  characters;  64  ASCII 
upper  characters,  plus  punctuation  and 
control;  5x7  dot  matrix;  EIA  standard 
RS232C  and  20mA  current-loop  (switch 
selectable). 

"$849.95*  with  DCA 


Look  to  DISC/3. ..authorized  distributors  for  IMSAI,  Lear-Sigler, 
Cromemco,  Z-80,  Centronics  Data  Computer,  Digital  Equipment 
Corp.,  and  Data  General  Corp.        *Prices  subject  to  change. 

DISC/3  1840  Lincoln  Blvd.,  Santa  Monica,  Calif.  90404 
Store  hours  —  Monday-Friday  8:30-5:30  by  appointment  only 


Disc/3 


Disc/3  (213)  451-8911 

ASSEMBLED  TOTAL 

$1099.95  _ 
$999.95 


RUSH  ORDER  FORM  -  or  CaH 

KIT* 

ADM  3-Kwith  DCA  (24x80)  $849.95 
IMSAI  8080  microsystem  $659.95 

Californians  please  add  sales  tax 
Enclosed  is  my  □  cashiers  check,  □  money  order,  □  personal  check, 

□  $100  deposit  for  C.O.D.     signature___  . 

□  BankAmericard  NQ  

□  Master  Charge  NO  


NAME 


ADDRESS 


CITY 


STATE 


82  INTERFACE  AGE 


CIRCLE  INQUIRY  NO.  50 


system-under-test  is  accomplished  using  a 
color-coded  flat  ribbon  cable  terminated  in  gold 
plated  "universal"  pin  connectors.  These  con- 
nectors can  be  used  with  wire-wrap  pins.  IC 
clips,  data  grabbers,  or  ball  clips.  An  input  data 
rate  in  excess  of  8  Megabytes/second  assures 
compatibility  with  most  microprocessors  and 
special-purpose  digital  systems. 

The  instrument  comes  with  a  1 00-page 
manual  which  includes  the  theory  of  operation 
of  the  unit  and  the  analysis  procedures  for 
seven  common  microprocessors.  Also  included 
are  sections  describing  production  testing,  field 
service,  and  educational  applications.  Delivery  is 
stock  to  30  days. 

For  further  information  contact  Paratronics. 
Inc.,  150  Tait  Avenue.  Los  Gatos.  CA.  95030; 
(408)  354-7766. 

CIRCLE  INQUIRY  NO.  108 

Math  Book  Bonus  with 
Purchase  of  Calculator 

Anyone  who  purchases  a  TI-30  calculator 
soon  will  receive  a  free  bonus  —  a  200-page 
book  entitled  "The  Great  International  Math  on 
Keys  Book"  that  can  help  high  schoolers  with 
their  math  studies  and  others  to  utilize  math  in 
everyday  life  applications. 


At  a  suggested  retail  price  of  $24.95.  the  kit 
is  designed  for  students  and  others  who  want  to 
make  effective  use  of  the  calculator's  capa- 
bilities in  both  classroom  and  home.  It  will  be 
available  through  a  wide  variety  of  retailers. 

For  high  school  students,  the  new  math  kit 
will  provide  an  opportunity  for  supplemental 
studies  and  exercises  in  algebra,  trigonometry, 
physics,  chemistry,  probability  and  statistics. 
Ways  to  use  the  calculator  to  perform  conver- 
sions are  also  included  in  the  book  since  the 
metric  system  is  now  being  adopted  in  the 
United  States.  Students  are  learning  currently  to 
measure  gallons  of  gas  in  liters  and  distances  in 
meters  instead  of  feet  or  miles. 

Students  and  others  can  also  use  the  book 
and  calculator  on  home  management  problems. 
For  example,  there  are  sample  problems  which 
show  how  easy  it  is  to  determine  the  amount  of 
paint  needed  for  a  room  area,  quantity  of  fenc- 
ing for  yards  or  cement  for  patios.  There  are 
also  hints  for  smart  supermarket  shopping  in- 
cluding finding  unit  costs  and  managing  a 
budget  at  the  market. 

Numerous  other  exercises  and  hints  cover 
how  to  use  the  calculator  in  personal  business 
and  finance  applications.  Included  are  such 
things  as  credit  card  purchases,  figuring 
mortgage  points,  interest  cost,  depreciation  and 
foreign  currency  conversions. 

The  closing  part  of  the  book  introduces  the 
users  to  some  entertaining  puzzles  and  games 
they  can  enjoy  with  the  calculator.  Some  ex- 
amples are  calculating  biorythms.  doing 
crossword  puzzles  and  just  having  fun  with 
numbers. 

For  further  information  contact  Texas 
Instruments.  Incorporated.  P.O.  Box  5012, 
Dallas,  TX  75222;  (214)  238-2481. 

CIRCLE  INQUIRY  NO.  109 

Slim  Profile 

The  UNIVUE  keyboard  and  instrumentation 
enclosure  is  designed  for  low  profile  instru- 
mentation and  computer  data  entry  applications. 
Special  design  features  include  a  welded  .062 


inch  steel  body  of  two  piece  construction  for 
strength  and  an  outside  removable,  flush 
mounting  aluminum  panel. 


Overall  size  is  24"x12"x3".  with  front  panel 
size  of  23"x8".  The  UNIVUE  body  is  coated 
with  light  gray  lacquer  type  primer/surfacer  to 
allow  virtually  any  type  paint  to  be  used  in  the 
application  of  final  finish.  The  UNIVUE  is 
shipped  complete  with  aluminum  panel,  rubber 


feet,  and  mounting  hardware.  Shipping  weight 
is  1  7  lbs.,  with  delivery  from  stock.  1  -24  price  is 
$32.95. 

For  further  information  contact  Advanced 
Data  Sciences.  P.O.  Drawer  1147.  Marion  OH 
43302;  (614)  382-7917. 

CIRCLE  INQUIRY  NO.  110 


Five  New  Convection-Cooled  Switching 
Power  Supply  Models 

Powertec  now  offers  five  new  models  of  the 
industry's  highest  power  density,  off-the-shelf, 
convection-cooled  switching  regulated  power 
supply  series.  Packaging  density  is  achieved  as  a 
result  of  the  mechanical  configuration,  and 
through  utilization  of  a  40kHz  switching  rate  - 
also  the  industry's  first. 


DON'T  FEEL 

ABANDONED 


V 


IMSA! 

SOUTHWEST  TECH 
POLYMORPHIC  SYSTEMS 
NATIONAL  MULTIPLEX 
LEAR-SIEGLER 
SEALS 
TARBELL 
OKIDATA 
SO  ROC 
ICOM 
TDL 


TDL 

g  EPA 

i    t;    ■       V     <  JM 

*  y        -  *****  ■  -  ■ 


XL 


BVTESHDP " 
fTlRlL  ORDER 

P.O.  BOX  28106 
TEMPE,  ARIZONA  85282 
602-894-1129 


QUOTE  ME  YOUR  DISCOUNT  PRICE  ON  THE 
FOLLOWING  SYSTEM  PACKAGE 

COMPUTER  

OPTIONS  

MEMORIES  

DISPLAYS.  

MISC._  


OTHERS. 


YOUR  NAME. 


VISIT  OUR  RETAIL  STORES: 

813  N.  SCOTTSDALE  RD.  12654  N.  28th  DRIVE  ADDRESS 
TEMPE,  AZ.  85282            PHOENIX,  AZ.  85029 
(602)894-1129  (602)942-7300  CITY  


 :  _ 

ASK  FOR  OUR  FREE  COMPUTER  HOBBYIST  BUYERS  GUIDE 


_ZIF_ 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  43  INTERFACE  AGE  83 


LONG  ISLAND 

COME  SEE  WHAT  A  "REAL" 
COMPUTER  STORE 
LOOKS  LIKE 

MICROCOMPUTERS 

PERIPHERALS 
ACCESSORIES 


IMSAI  8080 
BYTE-8 
SWTP  MP68 
CROMEMCO 
PROCESSOR  TECH 

INTERFACES  {KITS  or  ASSEMBLED  UNITS) 


MEMORY  EXPANSION 
COLOR  TV  GRAPHICS 
LEAR  SIEGLER  ADM  3 
PAPER  TAPE  READER 


BYTE 
SHOP 


PROGRAMS  AND  SOFTWARE 

VARIOUS  BASICS  —  TINY,  4K,  8K  and  12K. 
FOCAL  —  DOS  —  GAMES  —  BUSINESS  APPLICATIONS. 


ALSO  AVAILABLE  , 


APPLE  1 
MODEMS 


CASSETTES 
TERMINALS 


FLOPPIES 
DEC.  WRITERS 


X 


4> 


BUSINESS  APPLICATION  INQUIRES  INVITED 
SYSTEM  DEMONSTRATIONS  AND  LITERATURE  /  MAGAZINES. 

BYTE  SHOP  EAST,  INC. 
27-21  HEMPSTEAD  TURNPIKE 
LEVITTOWN,  LONG  ISLAND 
(516)  731-8116 

TWO  BLOCKS  EAST  OF  WANTAGH  PKWY. 

HOURS:  TUES.  thru  FRIDAY      11  to  9 
SATURDAY  10  to  5 


CIRCLE  INQUIRY  NO.  44 


Same  day  shipment.  First  line  parts  only.  Factory 
tested.  Guaranteed  money  back.  Quality  IC's  and 
other  components  at  factory  prices. 

INTEGRATED  CIRCUITS 


P.O.  Box  4430N  Santa  Clara,  CA  95054 
.  (408)  988-1640 


74D0TTL 

SN7400N 
SN7402N 
SN7404N 
SN7410N 
SN74I4N 
SN7420N 
SN7430N 
SN7440N 
SN7447N 
SN74S0N 
SN7473N 
SN7474N 
SN7475N 


ELECTRONICS 


DISPLAY  LE0S 

MJLMl  CA  270  2  90 

MAN3  CC  .125  39 

l2°     MAN6640  Dual      CC  ,500  3  50 
CA  300  1.50 
CC  300  1  50 
CC  .300  1  25 
CA  300  1.50 
CA  ,500  2,55 
CA  COO  2,25 
CC  .357  « 
CC  500  1.00 
CA  500  1,00 
CC  SCO  1  90 
CA  BOO  1,90 
2,50 
11 
S 
6.75 


FND800 
FN0807 

m  NSN33M  3  (14011  f  tin 
,  .  7520Clalrex  photocells 
S3     5082-7340  Hex 


CRYSTALS 

1  MHi  4  50  6.5536  4  50 

2  MMj  4  50  1 .8432  4  SO 

4  MHt  4  25  2.097152  7  75 

5  MHi  4  25  2  4576  7  50 
10  MHi  4.25  3  2766  7  50 
18  MHz  390  5  0688  4  50 
20  MHz  3  90  5  165  4  50 
32  MHz  3  90  5.7143  4  50 
32768  Hz  4.00  IB  432  4.50 
3  5795MHz  1  50  22  1184  4  50 


VOLUME  SPECIALS 

1  IDJ 

tuiHt]     :•.  raw              a  » 
WUH      CN'W                 7  m  in 
llOM        U»«fSin«lV        US  IS 
uvir>w  1**OKl            3  74  2  jj 
ixtiyb      S-  Dtfn          i- Jo  n 
utih-j      oxy*              i »  i » 
«in.i     lizjhSJiuv      i-y.-  In 

Mt'fr.li     7-iwnOKiiAg   ia<K  ia 

8K  Ram  ffoard  Kit 

■  Plug  compatible  with  Altai  r 
flBOO  and  Imsai  3080 

•  9H02APC  Low  power  500 
ns  RAMS  All  pans  Included 
with  full  instructions  S225.00 

2K  EPROM  Board  Kit  Si 35 ,00 

I/O  Board  Kit  S44.5Q 

60  Hz  Crystal  Time 
Base  Kit  S4+75 

Converts  digital  clocks  from 
AC  line  frequency  to  crystal  lime  i 
base.  Outstanding  accuracy 
Kit  includes:  PC  board. 
MM5369.  crystal .  resistors, 
capacitors  and  trimmer 

1977  IC  Update 
Master  Manual 

Brand  new.  Complete  IC  daia 
seleclor  from  all  manufacturers. 
15,000  cross  references.  530 
with  update  service  thru  1977. 
Domestic  postage  add  S2.0D, 
Foreign  $6.00. 

Not  a  Cheap  Clock 
Kit  S17.45 

Includes  everything  except 
case.  2-PC  boards.  6*. 50" 
LED  Displays,  5314  clock 
chip. transformer. ajlwmpc- 
nents  and  Full  instructions. 
Same  clock  kit  with  .80" 
displays  522,75 

Frequency  Counter  Kit 

Covers  audio,  ultrasonic  and 
low  amateur  band  to  5  MH; 
typical  Dual  channel  high  sen- 
sitivity -25  millivolts.  Crystal 
com  rolled  clock.  Can  be  pre- 
scaled  lor  higher  Irectuency. 
6*.  50"  digits.  Full  instructions. 
Less  power  supply.  $40.00 

Digital  Temperature 
Meter  Kit 

Indoor  and  outdoor .  Automati- 
cally switches  hack  and  lorth 
Beautiful.  50"  LED  readouts.  No- 
thing like  il  available.  Needs  no 
addiiional  parts  lor  complete,  full 
operation.  Will  measure  - 1 00  to 
■  200  F.  air  or  liquid.  Very  accu- 
rate. Easy  to  build-  S3 9. 95 


COSMAC  [ELP 

RCA  CMOS  V 


TERMS:  $5.00  min.  order  U.S.  Funds.  Calif  residents  add  6%  tax. 
BankAmericard  and  Master  Charge  accepted. 


Complete  kit  or  parts  to  build 
the  "Ell"  incL  CDP  1802  and 
users  manual  as  listed  in  Aug. 
76  Pop.  Elect,  minus  power 
supply  and  board.  S92.0D 


FREE:  Send  for  your  copy  of  our  1977 
QUEST  CATALOG.  Include  130  stamp. 


The  new  series,  designated  9E.  is  a  250-watt 
switching  regulated  power  supply  in  a  2.25"  x 
4.94"  x  15.0".  6  lb..  3  oz.  package  yielding 
1.4w/in3.  This  "low  profile"  package  is  provided 
in  response  to  an  extensive  survey  performed 
late  last  year  by  Powertec  of  a  broad  base  of 
power  supply  users.  This  profile  allows  it  to  fit 
crosswise  in  a  standard  5.25"  Retma  rack  while 
using  only  2.25"  of  rack  depth  or  it  may  be 
mounted  to  the  cabinet  alongside,  above,  below, 
or  behind  the  rack  drawers.  Additional  appli- 
cations are  alongside  CRT's  in  video  display  ter- 
minals, in  the  side  panels  of  consoles,  in  card 
cages,  in  briefcase  mounted  to  portable  test 
equipment,  or  any  number  of  other  applications 
that  an  innovative  engineer  can  imagine, 

The  input  voltage  range  for  this  supply  is 
1 15/230Vac  +10/-20%  with  a  20mS  hold-up 
allowing  it  to  work  under  abnormal  line  condi- 
tions. Under  "normal"  ±  1 0%  line  conditions,  this 
unit  will  operate  from  110.  1  15.  208.  220.  or 
230Vac  nominal  line  voltages.  Ripple  and  noise 
is  50mV  p-p,  regulation  is  2mV  for  a  full  30%  line 
change  and  0.2%  for  a  full  load  change  and  tran- 
sient response  is  <400//*s  for  recovery  to  0.1% 
with  a  maximum  deviation  of  250mV  for  a  50% 
load  change.  Overall  efficience  is  80%  minimum. 

Standard  features  include  remote  sensing  and 
voltage  programming  as  well  as  OVP  and  logic 
inhibit.  Options  include  factory  installed  "master- 
slaving"  that  does  not  require  matching  masters 
with  slaves  and  allows  masters  and  slaves  to  be 
interchangeable.  A  power-fail  logic  output  is  also 
optional. 

The  control  circuitry  is  all  new  and  provides 
many  protective  features  not  previously  offered 
by  any  supplier.  As  with  most  other  switching 
regulators,  protection  against  over-voltage,  over- 
current,  over-temperature  as  well  as  inadequate 
line  voltage  is  provided.  In  addition  to  these  there 
are  5  additional  proprietary  internal  features  that 
protect  the  supply  against  operating  conditions 
that  would  prove  fatal  to  many  other  switchers 
but  ensure  safe  operation  at  40kHz  in  the  9E5- 
50C- 1 7.  These  include  circuits  that  keep  transis- 
tor collector  currents  and  transformer  flux  densi- 
ties balanced  and  within  design  limits  under  all 
normal  and  abnormal  operation  conditions.  To 
demonstrate  inherent  reliability,  10  units  are 
presently  undergoing  perpetual  life  test.  Also, 
every  production  unit  is  subjected  to  a  24-hour 
burn-in.  These  burn-ins  include  repeated  line, 
load,  short-circuit,  and  thermal  cycling  as  well  as 
full  load  operation  at  a  40°C  ambient. 

This  supply  in  unit  quantities  sells  for  $395, 
which  makes  it  one  of  the  least  expensive 


84  INTERFACE  AGE 


CIRCLE  INQUIRY  NO.  60 


FEBRUARY  1977 


switching  supplies  available  in  this  power  range. 
Units  have  been  provided  to  Underwriters' 
Laboratories  for  investigation  and  recognition  per 
UL478  &  UL114.  Units  are  available  for 
demonstration  and  evaluation  now  with  produc- 
tion quantities  available  in  October. 

For  complete  details  and  specifications  on  the 
9E  Series,  send  for  the  new  "Contortionist"  bro- 
chure. 

For  further  information  contact  Powertec,  Inc., 
9168  De  Soto  Avenue.  Chatsworth,  CA  91311; 
(213)  882-0004. 

CIRCLE  INQUIRY  NO.  111 


Prompting  Desktop  Programmable 
Calculator 

A  prompting  programmable  desktop 
calculator  featuring  a  display  that  communicates 
with  the  user  has  been  introduced  by  Texas 
Instruments  Incorporated.  The  desktop  SR-60 
includes  a  printer,  magnetic  card  reader  and 
more  individual  function  keys  than  any  other 
calculator. 


With  its  "prompting"  display,  an  SR-60  user 
can  run  alphanumeric  programs  which  request 
information  through  the  20-character  display  at 
successive  stages  in  a  problem.  The  calculator 
then  waits  for  a  response  before  continuing  with 
problem  solving.  This  "dialogue"  allows  even  a 
novice  to  work  with  complicated  problems  im- 
mediately. 

The  SR-60  is  designed  for  both  business  and 
technical  operations.  In  business,  it  it  capable  of 
many  functions,  including  financial  analysis, 
long-term  forecasting,  and  payroll.  In 
technology,  its  46  exposed  scientific  functions 
are  immediately  available  for  calculations,  and 
480  program  steps,  expandable  to  1920  with 
an  optional  module,  are  available  for  complex 
programming. 

Although  it  has  high  programming  capability, 
the  SR-60  can  also  be  operated  easily  as  a 
general  purpose  calculator.  Its  left-to-right 
algebraic  entry  and  9  levels  of  parentheses 
allow  problems  to  be  entered  exactly  as  a  user 
would  say  them.  Answers  can  then  be  dis- 
played, printed,  or  both  —  at  the  user's  option. 

The  wide  range  of  keyboard  functions  in- 
cludes trig  functions,  hyperbolics,  powers,  roots, 
logs,  A%,  factorials  and  many  other 
mathematical  functions.  Degrees  of  accuracy 
can  be  precisely  controlled  to  provide  in- 
termediate rounding,  decimal  variance,  and 
scientific  notation. 

Extra  functions  such  as  conversions,  random 
number  generation,  and  standard  deviations  are 
available  in  pre-programmed  applications 
packages.  The  full  alphabet  is  included  in  the 
keyboard,  which  is  used  for  making  display- 
prompting  programs  and  for  convenient  labeling 
of  printout  sections. 

The  basic  calculator  has  480  program  steps 
and  40  data  memories,  and  retails  for  $1695. 
The  expanded  memory  option  retails  at  $300. 

For  further  information  contact  Texas 
Instruments.  Inc..  Post  Office  Box  5012.  Dallas. 
TX  75222  (Attn:  SR-60). 

CIRCLE  INQUIRY  NO.  112 


LITERATURE 


Useful  Catalogue  Free 

Abbott's  new  1976-1977  Industrial  Power 
Supply  Catalog  is  now  available,  FREE. 


This  informative  catalog  has  been  expanded 
and  contains  complete  physical  and  electrical 
specifications  on  our  lines  of  AC  to  DC  power 
supplies  and  DC  to  AC  power  inverters  for  in- 
dustrial and  OEM  applications.  All  units  are  high 
reliability,  rugged  modules  with  built-in  quality. 
Prices  are  listed  with  each  model  with  discounts 
to  99  pieces  shown. 

For  further  information  contact  Abbott  Tran- 
sistor Laboratories,  Inc.,  Industrial  Products 
Division,  5200  West  Jefferson  Boulevard,  Los 
Angeles,  CA  90016;  (213)  936-8185.  Telex 
69-1398. 

CIRCLE  INQUIRY  NO.  113 


^       Sunshine  Computer  Company  is  pleased  ^\ 
to  announce  that  we  are  now  a  representative 
of  The  Digital  Group  in  Southern  California. 


Software  is  available!  including  Basic.  Assembler,  Disassembler,  Text/Editor,  Z-80  Educator! 

Z-80-SVS  1-  Complete  4- Board  Z-80  svslem  including:  10K  Z-80-SYS  2:  Complete  4-L3oard  Z-80  system  including  1  8K 
memory,  12A  power  supply,  Standard  Motherboard,  Standard  memory,  I2A  power  supply,  Standard  Motherboard,  Standard 
Cabinet /kit  K  ,\  7\  ,  <  S  895,00      Cabinet,<kil).   Si  095.00 

Sunshine  Computer  Company 

COME  SEE  OUR  NEW  EXPANDED  OFFICES  IN  THE  CARSON  BUSINESS  PARK. 
|^    20710  South  Leapwood  Avenue      Carson,  California  90749      Rich  Travis      (  21  3)  830-8965  J 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  52 


INTERFACE  AGE  85 


WHAT  COMPUTERS  CAN  DO 


By  Donald  D.  Spencer 

Camelot  Publishing  Co.,  Inc.,  1977 

Paperback 

Review  by 
Judy  Scolney  Robertson  & 
Larry  Robertson 


What  Computers  Can  Do  is  a  general 
overview  of  the  "practical  applications 
of  the  computer  and  how  it  aids  people 
in  their  everyday  work."  The  book  is 
aimed  at  a  juvenile  audience.  It  presup- 
poses no  familiarity  with  computers  on 
any  level  and  concentrates  on  a  dis- 
cussion of  the  various  areas  in  which 
computers  are  used,  saying  very  little 
about  programming,  design  nor 
electronics. 

Aside  from  the  use  of  an  occasional 
buzz  word  (e.g.  "analog  to  digital," 
"transducer").  Spencer's  approach  is 
totally  non-technical.  Spencer  covers 
numerous  computer  applications  in 
this  illustrated  paperback.  He  includes 
education,  banking,  medicine,  art.  engi- 
neering, music,  law  enforcement, 
government,  recreation  and  the  media, 
as  well  as  several  other  areas.  In  ad- 
dition, Chapter  2,  "The  Computer 
Threat  to  Society,"  addresses  such 
current  problems  as  privacy  and  privi- 
leged information,  the  misuse  of  com- 
puters and  the  effects  of  automation  on 
employment.  This  chapter  is  of  par- 
ticular interest  to  the  young  reader  who 
will  soon  be  emerging  into  a  computer- 
dominated  society. 

Computers  is  a  well- written  intro- 
ductory book  for  the  preteen  or 
teenager  with  no  previous  exposure  to 
our  friendly  machines.  However,  the 
book  could  be  improved  by  the  in- 


clusion of  a  definition  of  each  tech- 
nical term,  either  as  it  occurs  or  in  an 
appended  glossary.  The  illustrations, 
mostly  photos,  are  interesting,  but  with 
the  green  on  green  printing,  they  are 
often  poorly  reproduced.  Replacement 
of  some  photos  with  line  drawings  or 
cartoons  would  have  significantly 
enhanced  the  book.  This  does  not 
prevent  us,  however,  from  recom- 
mending What  Computers  Can  Do  as  a  fine 
answer  to  the  question,  "Why  do  we 
have  to  have  computers?" 


VOLTAGE  REGULATOR  HANDBOOK 
THEORY  AND  PRACTICE 

Henry  Wurzburg, 
with  contributing  authors 
Bernie  Montoya,  Cal  Lidback 
and  Nick  Lycoudes 

Motorola  Inc.,  1976 

Price:  $2.50 

Paperback.    Available  through 
Motorola  distributors  or  by  writing 
directly  to  Motorola  Semiconductor 
Products  Inc. 

Review  by 
Judy  Scolney  Robertson  & 
Larry  Robertson 


The  Voltage  Regulator  Handbook  is  a 

comprehensive  guide  to  the  use  and 
functions  of  voltage  regulators.  Aimed 
at  the  electrical  engineer,  it  is  still 
comprehensible  to  the  sophisticated 
hobbyist  with  a  thorough  knowledge  of 
electronics.  Written  and  published  by 
Motorola  Semiconductor  Products  Inc., 
the  Handbook  relies  heavily  on  Motorola 
products  in  its  detailed  explanation  of 
the  operation  of  the  voltage  regulator. 
Motorola  data  sheets  which  are  com- 
plete, clear  and  well  designed  are 
included  in  this  highly  technical 
manual,  as  is  an  industry-wide  cross 
reference  guide. 

The  need  for  voltage  regulators  is 
best  stated  in  the  preface,  as  well  as  a 
brief  history  and  commentary  on  recent 
developments  in  the  field: 

In  many  electronic  systems, 
voltage  regulation  is  required  for 
certain  functions.  Yesterday's 
voltage  regulators  were  often 
complex  and  expensive  circuits. 
Valuable  time  was  diverted  from 
the  major  system  development 
effort  to  design  the  voltage  regu- 
lators. Today's  monolithic  inte- 
grated circuit  (IC)  regulator  is 
easing  that  task.  Available  as  a 
growing  variety  of  special- 
function  devices  and  with  fixed 


and  adjustable  voltage  ranges, 
the  IC  regulators  offer  design 
simplification  and  dramatic  cost 
improvements. 

Wurzburg,  et  al..  more  than  ade- 
quately cover  basic  theory,  selection  of 
regulators,  circuit  configuration,  design 
considerations,  heat  sinking,  relia- 
bility, design  and  layout.  In  addition, 
special  sections  are  devoted  to  trouble 
shooting  and  design  of  the  input 
supply. 

The  Handbook  is  a  totally  professional 
publication,  easy  to  refer  to  and  to  use. 
Additional  sources  are  listed  where 
appropriate,  allowing  the  interested 
reader  to  find  further  data  on  the  sub- 
ject easily. 

The  Voltage  Regulator  Handbook  is  an 
exceptional  reference  for  the  use  of 
voltage  regulators.  It  would  be  a 
valuable,  if  not  vital,  addition  to  the 
technical  library  of  anyone  engaged  in 
the  selection  and  use  of  IC  voltage 
regulators. 


Market  Your  8offware 

Call  or  Write 

Microcomputer  Software  Depository 

2361  East  Foothill  Boulevard 
Pasadena.  California  91107 
(213)  449-0616 


Development  Software 

•  8080  DIS  ASSEMBLER 

Two  Pass 

Converts  machine  language  code  to 

assembly  code 

Uncovers  ASCII  tables 

Generates  up  to  12K  labels 

Prints  out  symbol  table 

Address  offset  print  output 

Object  code  in  Intel's  punched  paper 
tape  format  @  20.00  +  1 .50  Calif,  sales 
tax  4-  2.00  postage.  Manual  @  5.00  + 
.30  Calif,  sales  tax  +  1.50  postage. 

•  EPS-1  SOFTWARE  DEVELOPMENT 
OPERATING  SYSTEM 

POWERFUL  8080  ASSEMBLER- 
MONITOR-TEXT  EDITOR 

Object  code  in  punched  paper  tape  or 
Don  Tarbell's  cassette  media 

$30.00  +  1.80  Calif,  sales  tax  +  1.50 
postage  and  handling  {includes  manual). 

DEALER  INQUIRIES  INVITED 

Call  or  Write 

Microcomputer  Software  Depository 

2361  E.  Foothill  Boulevard 
Pasadena.  California  91107 

(213)  449-0616 


86  INTERFACE  AGE 


FEBRUARY  1977 


The  Byte  Shop 
reaches  a  new  low 
in  microcomputers! 

$349 


The  Byt-8.  It  doesn't  have  a  nifty  (and  expen- 
sive) front  panel  with  lots  of  LED's  and  toggle 
switches. 

And  we  obviously  don't  have  a  big  full- 
color  ad. 

What  we  do  have  is  the  lowest  priced 
microcomputer  you  can  buy —built  around 
the  powerful  and  popular  8080A 
microprocessor. 

For  $349,  you  get  the  complete  micro- 
computer card,  motherboard,  power  supply 
and  chassis  in  kit  form. 

The  Byt-8  S 100  bus  is  the  same  one  used 
by  Altair,  IMSAI  and  most  others  so  you  have 
the  greatest  possible  flexibility  in  choosing 
memory  and  input/output  cards. 

Optional  cards  from  the  Byte  Shop  in- 


clude 4k,  8k  or  16k  of  Random  Access 
Memory,  4k  or  8k  of  Programmable  Read- 
only Memory,  a  multiple  input/output  card, 
a  TV  typewriter  card  and,  yes,  a  front  panel 
bootstrap  card,  if  you  want  the  LED's  and 
switches. 

Even  the  CPU  is  optional.  We'll  sell  you 
the  chassis,  motherboard  and  power  supply 
for  $229,  and  you  can  choose  your  own 
microcomputer  card— a  ZPU  for  instance? 

Byt-8.  It's  the  new  low  in  price,  but  we're 
aiming  for  a  new  high  in  flexibility,  delivery 
and  support.  See  the  Byt-8  at  your  nearest 

By,eshop  byte  3HDR 

the  affordable  computer  store 


Stores  now  open  in:  Arizona,  Phoenix.  Tempe;  California,  Berkeley,  Campbell.  Fresno.  Hayward.  Lawndale.  Long  Beach.  Mountain  View,  Palo  Alto. 
Pasadena.  Placentia.  Sacramento.  San  Diego.  San  Francisco.  San  Mateo.  Santa  Barbara,  Santa  Clara.  Tarzana.  Thousand  Oaks.  Walnut  Creek. 
Westminister;  Colorado,  Boulder.  Englewood;  Florida,  Cocoa  Beach.  Miami;  Indiana,  Indianapolis;  Minnesota,  Eagan;  New  York,  Levittown; 
Oregon,  Beaverton.  Portland;  Pennsylvania,  Bryn  Mawr;  South  Carolina,  Columbia;  Utah,  Salt  Lake  City;  Canada,  Vancouver.  British  Columbia. 
More  Byte  Shops  are  opening.  Please  write  to  Byte  Incorporated,  1261  Birchwood  Drive.  Sunnyvale.  California  940B6. 

CIRCLE  INQUIRY  NO.  41 


FEBRUARY  1977 


INTERFACE  AGE  87 


THE  BLACK 


Imagine  a  black  box.  On  one  side  is  a  switch,  on 
the  other  a  light.  The  switch  has  two  positions,  up 
and  down.  Place  the  switch  up  and  the  light  comes  on. 
Place  it  down  and  the  light  goes  off. 

Figure  1 

Now  try  to  imagine  what  is  going  on  inside  the 
box.  First  there  might  simply  be  two  wires  connect- 
ing the  switch  to  the  light.  There  is  also  the  possibili- 
ty that  the  switch  does  not  connect  directly  with  the 
light,  but  that  it  turns  on  a  light  inside  to  which  a 
trained  rat  responds  by  running  over  and  turning  on 
another  switch  that  turns  on  the  outside  light.  A  third 
possibility  is  that  there  is  a  human  being  inside  the 
box  who  responds  to  an  inside  light  in  the  same  way 
the  rat  does. 

These  three  possibilities  demonstrate  that  there  is 
more  than  one  way  of  internally  structuring  a  device 
to  perform  the  same  input-output  function.  A  couple 
of  important  differences  exist  in  these  three  forms. 

One  is  speed.  The  wired  switch  turns  on  the  light 
fastest  in  response  to  the  switch  being  thrown.  The 
rat  is  probably  second  in  speed  and  the  human  is  the 
slowest. 


These  differences  are  for  time  and  ease  of  change 
only;  the  input-output  function  remains  the  same.  If 
one  has  ever  used  a  computer  system  via  a  remote 
terminal  or  by  passing  cards  and  printout  back  and 
forth  through  a  window,  he  cannot  tell  for  sure 
whether  the  program  went  through  a  computer, 
whether  a  human  figured  out  the  answer  and  typed  it 
back,  o  r  whether  a  highly  trained  rat  responded  to  the 
input  with  a  pre-learned  response.  In  analogy, 
software  and  hardware  and  their  in-between  mixture, 
firmware,  perform  the  same  logical  function.  Their  only 
difference  is  in  speed  and  ease  of  change. 

There  is  a  second  type  of  black  box.  This  is  one 
whose  output  is  dependent  not  only  upon  the  present 
input,  but  upon  inputs  which  occurred  in  the  past. 
For  example,  assuming  the  black  box  has  the  property 
that  for  every  third  time  the  switch  is  placed  in  the  up 
position,  the  light  is  turned  on,  and  it  turned  off  the 
next  time  the  switch  came  down.  The  sequence  of 
events  inside  the  box  might  be:  "The  switch  is  up, 
that's  one.  Now  it's  down.  Now  it's  up,  that's  two. 
Now  it's  down.  Now  it's  up  again,  turn  on  the  light. 
Now  it's  down,  turn  the  light  off  and  start  over." 


Figure  3 

^■9ure  ^  This  sequence  may  be  viewed  as  a  series  of  trans- 
If  the  creator  of  the  black  box  wanted  to  change  formations  in  which  the  box's  input-output  function 
the  input-output  function  (e.g.  to  have  the  light  go  off  changes.  Initially  it  is  a  box  waiting  for  three  "switch- 
when  the  switch  is  up  and  on  when  down),  he  would  ups"  to  occur  in  order  to  turn  on  the  light.  Once  the 
face  different  degrees  of  difficulty.  In  the  wired  case,  switch  has  been  thrown  up,  it  is  a  box  waiting  for  two 
he  manually  would  have  to  change  the  connections  more  "switch-up's"  before  turning  on  the  light.  The 
between  the  switch  and  the  light.  In  the  rat  example,  second  time  the  switch  is  thrown  up,  it  is  a  box 
he  might  either  place  a  new  rat  in  the  box,  trained  in  needing  one  more  "switch-up."  The  third  time  the 
the  opposite  way,  or  quickly  retrain  the  present  one.  switch  is  put  up,  it  is  a  box  with  the  light  on  and  re- 
For  the  human,  he  might  simply  say  to  him,  "Okay,  do  quiring  a  single  "switch-down"  to  turn  it  off. 
it  the  other  way,"  (being  sure  to  specify  exactly  what  Each  of  these  forms  represents  the  concept  of  a 
is  meant  by  "the  other  way").  state.  For  each  state,  the  response  to  present  and 


Figure  1.  Figure  2. 


88  INTERFACE  AGE 


FEBRUARY  1977 


BOX 


future  input  differs.  A  state  is  dependent  upon  both 
the  internal  arrangements  of  the  box  and  all  previous 
inputs.  A  change  in  state  may  be  considered  as  either 
a  reconfiguration  of  the  internal  workings  of  the  box 
or  as  some  sort  of  memory  (e.g.  an  "up-switch" 
counter). 

There  is  a  third  type  of  black  box  which  differs 
slightly  from  the  previous  ones.  Suppose  there  was  an 
additional  input  to  the  box  which  signaled  to  the  in- 
ternal operator  that  it  must  look  at  the  input  only 
when  this  additional  input  went  from  down  to  up  or 
up  to  down.  At  any  other  time,  the  original  input 
could  be  switched  up  and  down  and  the  state  of  the 
box  and  the  light  output  would  not  be  affected.  This 
additional  input  signals  the  passage  of  time  in  the 
sense  it  tells  the  box  the  time  at  which  to  look  at  the 
other  input.  Thus  it  is  commonly  called  a  clock.  Boxes 
whose  state  changes  only  when  the  clock  is  toggled 
(when  signal  goes  from  up  to  down  or  down  to  up) 
are  termed  synchronous.  Most  logic  is  built  synchro- 
nously to  avoid  problems  that  occur  when  physical 
functions  and  interconnections  are  implemented. 

Figure  4 

One  can  explore  the  computer  using  the  black  box 
analogy  in  many  ways,  for  it  is  nothing  more  than  a 
complex  interconnection  of  black  boxes.  Inputs  may 
be  represented  by  switches  on  a  front  panel,  or  a 
keyboard,  or  by  electrical  voltages  or  currents.  Out- 
puts may  be  lights  or  printed  characters  or  electrical 
voltages  or  currents. 

The  designer  of  integrated  circuits  look  at  various 
silicon  configurations  as  black  boxes,  providing  input- 
output  functions  on  a  microscopic  level.  The  logic 
designer  uses  the  integrated  circuits  as  black  boxes  to 
be  interconnected  to  form  a  computer.  The  computer 
user  may  view  the  entire  computer  as  a  black  box 
with  a  complex  function  of  output  versus  input.- 


By  KENNETH  PUGH 


A  computer  user  prepares  a  BASIC  program  to  add 
two  input  numbers  together  and  to  print  out  the  sum. 
He  starts  the  computer  and  branches  to  a  loader 
routine.  By  inputting  the  command  "Load,"  he  con- 
figures the  computer  into  a  black  box  that  simply 
reads  a  binary  input  (the  BASIC  interpreter)  and 
remembers  it.  By  typing  the  input  "Go,"  he  changes 
the  computer  into  a  box  that  interprets  his  typed  in- 
puts as  BASIC  statements  and  remembers  them.  By 
typing  "Run,"  he  then  changes  his  computer  into  a 
box  that  takes  the  next  two  inputs,  adds  them,  and 
prints  out  the  result. 

The  computer  hobbyist  may  apply  the  black  box 
approach  on  several  levels;  he  can  use  a  micro- 
processor circuit  as  a  black  box  with  its  given  input- 
output  function  and  set  of  states  defined  by  its  inter- 
nal registers,  or  he  may  buy  a  pre-built  computer 
system  and  use  it  as  a  black  box.  He  can  buy  a  stored 
program  in  PROM  (programmable  read-only  memory) 
and  use  it  as  a  box  to  perform  its  function.  Or  he  may 
use  pre-written  software  (as  a  BASIC  interpreter)  as  a 
black  box. 

One  need  not  have  any  knowledge  of  an  entire 
computer  and  a  BASIC  interpreter  to  use  the  BASIC 
language.  By  treating  entire  system  as  a  set  of  black 
boxes,  one  can  select  those  whose  internal  functions 
one  wishes  to  understand  and  those  which  will  be  put 
to  use. 

The  modern  computer  makes  no  distinction 
between  instructions,  which  configure  the  device  into 
a  different  black  box,  and  data,  which  is  input  to  the 
black  box.  Thus  there  is  an  ambiguity  as  to  whether 
the  computer  responds  to  an  input  by  changing  itself 
into  a  different  box  or  whether  it  simply  remembers 
the  past  input.  In  either  case,  it  can  be  considered  a 
change  in  state. 

Editor's  note:  . . .  and  from  this  series  of  micro- 
cosmic  events,  our  lives  in  the  everyday  mesocosm 
have  been  irrevocably  altered. 


Figure  3. 


#of'UP'S' 

0 
1 
1 
2 
2 
3 
3 
1 

and  so  on 


Interval 
Stata 

Previous 

Up 
Previous 
Down 


Figure  4. 


FEBRUARY  1977 


based  on  positive  edge 
triggered  service 


INTERFACE  AGE  89 


XililEDiA  P^EiEnCi 


TheSOROC  IQ120 


CURSOR  CONTROL.  Forespace,  back- 
space, up,  down,  new  line,  return,  home, 
tab,  PLUS  ABSOLUTE  CURSOR  AD- 
DRESSING. 

TRANSMISSION  MODES.  Conversation 
(half  and  full  Duplex)  PLUS  BLOCK 
MODE  —  transmit  a  page  at  a  time. 

FIELD  PROTECTION.  Any  part  of  the 
display  can  be  "protected"  to  prevent 
overtyping,  Protected  fields  are  displayed 
at  reduced  intensity. 

EDITING.  Clear  screen,  typeover,  abso- 
lute cursor  addressing,  erase  to  end  of 
page,  erase  to  end  of  line,  erase  to  end 
of  field. 

DISPLAY  FORMAT.  24  lines  by  80  char 
acters  (1 ,920  characters). 

CHARACTER  SET.  96  characters  total. 
Upper  and  lower  case  ASC 1 1 . 

KEYBOARD.  73  keys  including  numeric 
key  pad. 

REPEAT  KEY.  1  5  cps  repeat  action. 

DATA  RATES.  Thumbwheel  selectable 
from  75  to  19,200  baud. 

SCREEN.  12  inch  rectangular  CRT  -  P4 
phosphor. 


SPECIAL  INTRODUCTORY  PRICING 


Kit  $995.00 


Assembled  $  1,295.00 


Specials  of  the 

Month 

OAE  Paper  Tape  Reader   

 (kit)  $65 

(assem.)  $80 

North  Star  MICRO-DISK 

with  Power  Supply  &  Cabinet  .  . 

(kit)  $699 

(assem.)  $799 

TDL  ZPU  Board  

....   (kit)  $255 

(assem.)  $305 

Cromemco  DAZZLER  

(kit)  $205 

(assem.)  $325 

Selectric  Terminals 

$1,200.00 

AT  LAST! 

An  ASCII  coded  Selectric  terminal 
with  a  RS232-C  interface. 

Call  or  write  us  today  for  details. 


XIMEDIA  OFFERS  A  FULL  RANGE  OF  PRODUCTS  FOR 
THE  PERSONAL  COMPUTER  ENTHUSIAST  AND  THE 
SMALL  SYSTEM  DESIGNER.  LET  US  QUOTE  ON  ALL 
YOUR  HARDWARE  AND  SOFTWARE  NEEDS. 

OUR  RETAIL  STORE -THE  COMPUTER  ISTxrn  -  IS  NOW 
OPEN  IN  SAN  FRANC/SCO.  CALL  US  FOR  DIRECTIONS. 


XililEDiA 

1290  24th  Avenue  .  San  Francisco,  CA  94122 

(415)  566-7472.  Please  call  collect! 

California  residents  add  6%  sales  tax.  Please  allow  3  weeks  for  delivery. 


CIRCLE  INQUIRY  NO.  49 


90  INTERFACE  AGE 


FEBRUARY  1977 


By  Robert  A.  Stevens 
Software  Editor 


Software  Section 


ALL  MICROCOMPUTER  MAGAZINES  ARE  NOT  EQUAL 

Contrary  to  Wayne  Green's  (Publisher  of  Kilobaud 
Magazine)  generalized  prognosis  about  micro- 
computer magazines  not  publishing  long  software  pro- 
grams nor  paying  more  than  $50.00  for  software  pro- 
grams, other  microcomputer  magazines  have  been  do- 
ing this  for  some  time  now.  KILOBAUD'S  apparent 
policy  of  not  publishing  long  programs  nor  paying  more 
than  $50.00  for  a  software  program  article  in  no  way 
establishes  the  trend  at  the  publishing  market  place. 

BYTE,  Dr.  DOBB'S  JOURNAL  &  INTERFACE  AGE 
all  have  published  long  software  programs  in  the  past. 
Although  I  cannot  speak  for  the  other  microcomputer 
magazines,  INTERFACE  AGE  will  continue  to  publish 
long  programs.  A  good  example  of  this  is  the  1976 
December  issue  of  INTERFACE  AGE.  This  issue  in- 
cluded the  following  software  articles: 

•  Mark  Borgerson's,  Test  Editor  for  the  SWTPC-6800 
software  article  consisting  of  6V£  typeset  pages 
including  a  605  line  statement  source  listing  pro- 
gram; 

•  Roger  Rauskolb's  Dr.  Wang's  Palo  Tiny  BASIC  soft- 
ware article  consisting  of  10  typeset  pages  includ- 
ing grammar  and  over  1700  line  statement  source 
listing  program; 

•  Four  part  serial  LLL  BASIC  Interpreter  software 
article  that  includes  grammar  and  complete  source 
listing  program  with  over  200,000  bytes  of  source 
code  that  probably  will  require  well  over  50  typeset 
pages  to  publish. 

Both  of  the  other  microcomputer  magazines  also 
have  published  meaningful  long  programs. 

In  regards  to  total  payment  for  long  software  pro- 
grams both  BYTE  and  INTERFACE  AGE  are  paying  up 
to  $50.00/typeset  page  for  software  manuscripts  (Dr. 
Dobb's  Journal  current  policy  is  not  to  pay  for  manu- 
scripts published).  Even  a  six  year  old  would  tell  you 
that  $50  times  say  10  pages  is  more  than  $50  which 
is  apparently  the  maximum  price  that  KILOBAUD 
would  pay  for  this  software  article. 

To  draw  your  own  conclusions  as  to  which  micro- 
computer magazine  to  submit  your  software  programs 
please  refer  to  the  following  columns  in  this  issue  of 
INTERFACE  AGE: 

•  INTERFACE  AGE'S  Best  Article  of  the  Month 
Award. 

•  INTERFACE  AGE  Will  Pay  Up  to  $50/Page  for  Soft- 
ware 

•  Best  Article  Of  the  Year  Award 

INTERFACE  AGE  IS  FILLING  THE  SOFTWARE  VOID  WITH 
MAJOR  PROGRAMS 

INTERFACE  AGE  is  filling  that  microcomputer 
software  void.  This  issue  includes  six  articles  on 
software  featuring  a  major  stock  investment  program, 
and  six  software  development  programs.  These 
programs  are: 

•  The  stock  option  program  by  Edward  Christianson 


provides  microcomputerized  Hedge  Options  for  the 
sophisticated  stock  investor.  This  software  article  in- 
cludes fundamentals  and  presents  stock  investment 
strategies  required  to  be  successful  at  the  market 
place.  The  software  program  is  written  in  Processor 
Teck's  5K  BASIC  for  the  8080  microcomputer 

•  A  Random  Number  Generator  assembly  language 
program  by  Bob  Martin  provides  an  improved  RND 
Function  Generator  for  your  8080  BASIC  Inter- 
preter. In  addition  a  RND  Function  Generator  Chi- 
Square  test  program  is  included  to  help  you  deter- 
mine just  how  good  is  your  RND  Function  Gener- 
ator. 

•  An  8080  Memory  Object  Code  Search  Routine  in 
assembly  language  by  T.  E.  Travis  provides  means 
for  searching  unknown  object  code  for  known  in- 
struction sequences  in  order  to  modify  object  coded 
software  to  be  compatible  with  your  system  or  to 
add  software  embellishments. 

•  A  resident  6800  development  software  monitor  pro- 
gram called  PROTO  developed  by  and  made  avail- 
able to  the  readers  of  INTERFACE  AGE  by  Ameri- 
can Microsystems.  PROTO  is  a  ROM  resident  mon 
-itor  firmware  package  that  comes  with  AMI's  EVK 
series  of  microcomputer  boards. 

•  A  BASIC  Floating  Point  Math  Package  by  David 
Mead  and  others  for  the  LLL  BASIC  Interpreter  is 
presented  in  this  issue.  This  is  part  #3  of  the  series 
of  articles  on  the  LLL  BASIC  Interpreter  program. 

CALL  FOR  INFORMATION  ON  BASIC  PROGRAMMING 
LANGUAGES 

INTERFACE  AGE  is  conducting  a  survey  on  the 
characteristics  and  programming  power  of  micro- 
computer BASIC  conversational  programming  lan- 
guages. This  survey  includes  Tiny  BASIC  (TB),  Tiny 
BASIC  Extended  (TBX),  Standard  BASIC  (SB),  Stan- 
dard BASIC  Extended  (SBX)  and  Business  BASIC  (BB) 
languages.  One  of  the  many  objectives  of  this  survey  is 
to  highlight  the  correlation  between  BASIC  languages 
in  order  to  provide  insight  for  running  a  BASIC  appli- 
cation program  on  any  of  the  different  BASIC  lan- 
guages. At  the  completion  of  this  survey,  the  results 
will  be  published  in  INTERFACE  AGE. 

If  you  have  developed,  helped  develop,  or  modified 
any  BASIC  type  of  programming  language  for  any 
microcomputer,  please  contact  or  send  hard  copy  of 
grammar,  user's  manual,  copy  of  software  and  any 
supporting  documentation  to  Robert  A.  Stevens,  soft- 
ware editor,  INTERFACE  AGE.  Please  include  your 
home  and  work  telephone  numbers  (for  coordination) 
with  all  correspondence. 

BEST  ARTICLE  OF  THE  MONTH  AWARD  UP-DATE 

INTERFACE  AGE  will  bestow  an  Honorary  Award  of 
$100.00  to  the  author  of  the  best  non-commercial 
microcomputer  article  of  the  month.  Only  individuals 
are  eligible  for  this  monthly  honorarium.  This  monthly 


FEBRUARY  1977 


INTERFACE  AGE  91 


SOFTWARE  SECTION 


SOFTWARE  EDITORIAL 


award  is  in  addition  to  the  honorarium  given  on  the 
page  count  basis.  Microcomputer  articles  may  be  on 
hardware,  software  or  a  combination  hardware-soft- 
ware and  will  be  judged  by  the  INTERFACE  AGE 
readership. 

INTERFACE  AGE  NEEDS  YOUR  VOTE 

Help  INTERFACE  AGE  determine  the  type  of  arti- 
cles you  want  to  see  published  in  the  future  by  casting 
your  vote  of  10  points  for  the  article  (block  voting)  or 
articles  (by  vote  splitting)  you  liked  best.  Feedback  will 
provide  encouragement  to  authors  and  wil!  help  make 
the  INTERFACE  AGE  The  Microcomputer  magazine  of 
the  industry. 

Each  INTERFACE  AGE  magazine  shall  include  one 
original  bingo  voting  card.  Each  individual  possessing  a 
bingo  voting  card  shall  be  allowed  up  to  ten  votes  to  be 
cast  as  a  total  single  vote  block  for  one  author  or  sub- 
divided into  any  vote  block  segment  size  combin- 
ations, with  the  total  cast  vote  sum  not  to  exceed  ten, 
cast  between  two  or  more  authors  (no  xerox  copies  of 
the  bingo  vote  card  please).  Each  published  article  is 
assigned  a  block  of  10  bingo  card  numbers  with  the 
last  digit  of  the  number  (LSD)  to  represent  your  cast 
vote  value.  0  represents  a  vote  value  of  10.  The  prefix 
digits  of  the  number  block  defines  the  article  number. 

All  valid  bingo  vote  cards  must  be  postmarked  prior 
to  12:00  P.M.  of  the  last  day  of  the  month  following 
the  issue  date  of  the  related  magazine. 


BEST  ARTICLE  OF  THE  YEAR  AWARD 

INTERFACE  AGE  will  bestow  an  Honorary  Award  of 
$500  value  in  products  advertized  in  INTERFACE  AGE 
to  the  author .  of  the  best  non-commercial  micro- 
computer article  published  during  the  year  ending 
November  1 977.  The  best  article  of  the  year  award  will 
be  picked  from  the  group  of  the  best  article  of  the 
month  awards.  Like  the  best  article  of  the  month 
award,  only  individuals  are  eligible  for  this  yearly 
honorarium.  The  yearly  award  is  in  addition  to  the 
monthly  award  and  honorarium  given  on  the  page 
count  basis.  The  yearly  award  will  be  judged  by  the 
editors  of  INTERFACE  AGE  and  will  be  announced  in 
February  1978  issue  of  INTERFACE  AGE. 

INTERFACE  AGE  WILL  PAY  UP  TO 
S50/PAGE  FOR  SOFTWARE 

INTERFACE  AGE  is  continually  soliciting  original 
unpublished  quality  documented  highly  commentated 
source/object  code  software  listings  and  software 
technical  articles  for  publishing  in  the  INTERFACE 
AGE.  Manuscript  text  must  be  typed  double  spaced 
with  wide  margins.  Figures,  tables,  flow  diagrams  and 
charts  must  be  numbered  and  submitted  on  separate 
sheets  of  white  bond  paper  (Send  original  copy  only). 
Program  listings  must  be  printed  on  white  clean  paper 
using  a  new  black  ink  ribbon,  and  please,  if  possible, 
supply  a  punched  paper  tape  assembly  (source  +  ob- 
ject) code  listing  +  source  code  listing  +  object  code 


dump  with  your  hard  copy.  Be  sure  to  record  your 
name,  company  and  office  and  home  telephone  num- 
bers on  all  materials  submitted  to  the  software  editor. 
Also  include  statement  in  cover  letter  allowing  INTER- 
FACE AGE  and  the  Microcomputer  Software 
Depository  to  publish  and  distribute  copies  of  your 
software  program.  Include  a  prepaid  postage  stamped 
envelope  with  your  return  address  only  if  you  want 
your  manuscript  returned,  in  the  event  that  the  sub- 
mitted article  is  not  accepted  for  publication. 

Articles  accepted  and  published  will  receive  an 
honorary  recognition  award.  Honorariums  are  based 
upon  technical  content,  manuscript  preparation  and 
subject  suitability  for  publication  in  INTERFACE  AGE. 
Honoraria  range  from  $1  5.00  to  $50.00  per  typeset 
magazine  page.  In  addition,  the  best  article  of  the 
month  submitted  will  receive  a  $100  bonus. 
INTERFACE  AGE'S  readership  will  determine  by  vote 
which  is  the  best  article.  (See  best  article  of  the  month 
award).  All  software  submitted  to  INTERFACE  AGE 
will  be  deposited  in  the  Microcomputer  Software 
Depository  (MDS)  for  low  cost  distribution. 

Address  all  software  correspondence  to  R.  A. 
Stevens,  Software  Editor,  c/o  INTERFACE  AGE 
Magazine,  2361  E.  Foothill  Blvd.,  Pasadena,  CA 
91 107  or  call  (213)  449-1655. 

SOFTWARE  SHOPPING  LIST 

Now  that  INTERFACE  AGE  has  expanded  the 
microcomputer  software  coverage  and  developed  a 
large  appetite  for  good  software,  your  programs  and 
application  software  is  badly  needed  to  sate  this  en- 
larged software  appetite.  This  software  shopping  list 
includes  the  following: 

•  Microcomputer  Development  Software  such  as 
assemblers,  disassemblers,  editors,  monitors, 
utilities,  mini-maxi  BASIC  interpreters  and  com- 
pilers, FORTRAN  interpreters  and  compilers,  boot 
strap  loaders,  software  drivers,  cassette  software 
operating  systems  (COS),  floppy  disc  software  oper- 
ating systems  (FDOS),  TTY  software  operating  sys- 
tems (TTYOS),  and  CRT  software  operating  sys- 
tems (CRTOS)  for  all  microcomputer  configur- 
ations. 

•  Short  Software  Routines  such  as  math  packages  and 
I/O  diagnostics  for  all  microcomputer  configur- 
ations. 

•  Application  Software  Programs  such  as  Analog  To  Digital 
Converter  (DAC)  -  Digital  to  Analog  Converter  (DAC) 
software  control  programs,  Automated  mem- 
bership billing  and  mailing  list  update  program, 
Inventory  control  software,  invoice  and  billing  soft- 
ware. Accounts  Receivables  and  Payable  software, 
process  control  programs,  etc.  for  all  micro- 
computer configurations. 

•  Software  Communications  Protocol  Programs  for  such 
communication  protocols  as  the  BSC  or  Bisync 
(Binary  Synchronous  communications  protocol 
procedures)  and  the  new  SDLC  (Synchronous  Data 
Link  Control  communication  protocol  procedures), 
etc. 

•  Off-line  Software  Storage  Format  Control  Programs  for  cas- 
sette, paper  tape,  and  floppy  disc  software  record- 


92  INTERFACE  AGE 


FEBRUARY  1977 


SOFTWARE  SECTION 


SOFTWARE  EDITORIAL 


ing  formats. 

•  Microcomputer  Game  Programs 

•  Add  Your  Own  Program  Shopping  List  Here  Send  your  list 
to  the  software  editor. 

HALF  SIZE  PROGRAM  LISTINGS  VS  FEWER  PROGRAMS 
UPDATE 

Starting  with  this  issue  full  size  xerox  copies  of  soft- 
ware published  in  half  size  format  will  be  available 
from  the  Microcomputer  Software  Depository  (MSD). 
See  MSD  program  listing  for  details. 

INEXPENSIVE  MICROCOMPUTER  SOFTWARE 

The  Microcomputer  Software  Depository  (MSD)  will 
act  as  repository  for  source  and  object  code  tapes. 
Programmers  wishing  to  contribute  programs  to  the 
public  domain  but  who  do  not  want  to  bother  with 
distribution,  may  do  so  by  forwarding  appropriate 
documentation  including  short  descriptive  write-up 
and  punch  paper  tape  copy  of  program  if  possible  or 
cassette  copy  to  MSD.  There  is  no  membership  fee  for 
access  to  the  public  domain  paper  tapes  (PDT)  from 
MSD. 

Anyone  may  obtain  copies  of  these  PDT  software 
packages  by  prepaying  a  small  fee  with  the  order  to 
cover  duplication,  postage  and  handling  cost.  Prices 
will  be  listed  periodically  in  INTERFACE  AGE.  Typical 
cost  for  a  short  program  will  be  approximately  $2.00 
($2.00/ounce)  +  tax,  postage  and  handling.  As  a 
convenience  MSD  will  also  provide  punched  paper 
tape  copies  of  vendor  supplied  software  packages 
(VSP)  that  will  be  sold  at  vendor  suggested  sale  prices. 
For  a  current  copy  of  the  available  software  from  the 
Microcomputer  Software  Depository  (MSD)  send  a 
check  for  $1.00  with  a  prestamped  return  envelope  to 
MSD. 

Support  MSD  to  build  a  software  library  by  sending 
copies  of  your  documented  software  programs  includ- 
ing short  description,  flow  diagrams  and  punched 
paper  tape  source  code  and  object  listings  if  possible 
or  cassette  tape  copy  for  low  cost  distribution  to  the 
following  address:  Microcomputer  Software  Depo- 
sitory, 2361  E.  Foothill  Blvd.,  Pasadena,  CA.  91107; 
(213)  449-0616. 

The  following  lists  software  available  from  MSD  on  a  pre- 
paid basis  only.  The  total  cost  of  each  package  is  the  sum  of 
the  basic  price  +  California  sales  tax,  if  applicable,  + 
postage  and  handling  cost.  Foreign  subscribers  please  note 
the  different  mailing  cost  for  postage  outside  USA.  Address 
all  inquiries  to 

Microcomputer  Software  Depository 
2361  E.  Foothill  Blvd. 
Pasadena,  Calif.,  91  107 
or  call  (213)  449-0616 

MICROCOMPUTER  SOFTWARE  DEPOSITORY  (MSD) 
PROGRAMS  DATE  FEB.  1977  REV.  1 

PROGRAM  MEDIA 

PTAC       PAPER  TAPE  ASSEMBLY  CODE 
PTSC       PAPER  TAPE  SOURCE  CODE 
PTOC       PAPER  TAPE  OBJECT  CODE 


PTBC  PAPER  TAPE  BASIC  CODE 

PTAL  PAPER  TAPE  ASSEMBLY  LISTING 

PTSL  PAPER  TAPE  SOURCE  LISTING 

PTOL  PAPER  TAPE  OBJECT  LISTING 

PTOD  PAPER  TAPE  OBJECT  DUMP 

PTBL  PAPER  TAPE  BASIC  LISTING 

CTAL  CASSETTE  TAPE  ASSEMBLY  LISTING 

CTSL  CASSETTE  TAPE  SOURCE  LISTING 

CTOL  CASSETTE  TAPE  OBJECT  LISTING 

CTOD  CASSETTE  TAPE  OBJECT  DUMP 

CTBC  CASSETTE  TAPE  BASIC  CODE 

CTBL  CASSETTE  TAPE  BASIC  LISTING 

HCAC  XEROX  HARD  COPY  OF  ASSEMBLY  CODE 

HCSC  XEROX  HARD  COPY  OF  SOURCE  CODE 

HCOC  XEROX  HARD  COPY  OF  OBJECT  CODE 

HCBC  XEROX  HARD  COPY  OF  BASIC  CODE 

HCAL  XEROX  HARD  COPY  OF  ASSEMBLY  LISTING 

HCALF  FULL  SIZE  XEROX  HARD  COPY  OF  ASSEMBLY 
LISTING 

HCSL  XEROX  HARD  COPY  OF  SOURCE  LISTING 

HCOL  XEROX  HARD  COPY  OF  OBJECT  LISTING 

HCOD  XEROX  HARD  COPY  OF  OBJECT  DUMP 

HCBL  XEROX  HARD  COPY  OF  BASIC  LISTING 

TEXT  XEROX  HARD  COPY  OF  PRINTED  TEXT 

PTTL  PAPER  TAPE  TEXT  LISTING 

CTTL  CASSETTE  TAPE  TEXT  LISTING 

MAN  MANUAL 

HCGR  XEROX  HARD  COPY  OF  GRAMMAR 

PTGR  PAPER  TAPE  COPY  OF  GRAMMAR 

BBSL  XEROX  HARD  COPY  OF  BINARY  BOOTSTRAP 
LOADER 

HBSL  XEROX   HARD   COPY   OF   HEX  BOOTSTRAP 
LOADER 

PACK  PACKAGE     PRICE     INCLUDES  ALL 
ITEMS/PROGRAM  #  WITH  SYMBOL  < 

SUFFIX  C  =  HAND  ASSEMBLED  CODE 
SUFFIX  L  =  COMPUTER  FORMATED  LISTING 
SUFFIX  D=  CODE  DUMP  IN  OCTAL  OR  HEX 
SUFFIX  F=  FULL  SIZE  COPY 


NOTES 


> 

% 


CALIF.  SALES  TAX  REQUIRED  FROM  RESIDENTS 
OF  CALIF. 

USA  POSTAGE  +  HANDLING  OR  THIRD  CLASS 
USA  POSTAGE  +  HANDLING  OR  SURFACE  RATE 
FOREIGN  POSTAGE  @  THREE  TIMES  THIRD  CLASS 
USA  POSTAGE  RATE  (STANDARD)  OR  SURFACE 
RATE  FOREIGN  POSTAGE  @  FIVE  TIMES  USA 
POSTAGE  RATE  (ALTERNATE) 
NEW  PROGRAM  LISTING 
VENDOR  SOFTWARE  PACKAGE 


DEFINITIONS: 

ASSEMBLY  LISTING:  COMPUTER  ASSEMBLED  SOFTWARE 
PROGRAM  LISTING  THAT  INCLUDES  SYMBOLIC 
ASSEMBLY  LANGUAGE  SOURCE  CODED  INSTRUC- 
TIONS WITH  COMMENTS  PLUS  EQUIVALENT  MACHINE 
LANGUAGE  OBJECT  CODED  INSTRUCTIONS  AND 
MEMORY  ADDRESS  ASSIGNMENTS  FOR  EACH 
INSTRUCTION  (SOURCE  +  OBJECT). 
ASSEMBLY  CODE:  SAME  CONTENT  AS  ASSEMBLY  LISTING 
BUT  HAND  ASSEMBLED. 

SOURCE  LISTING:  SOFTWARE  PROGRAM  LISTING 
RESULTING  FROM  COMPUTER  SOFTWARE 
CONTROLLED  ASSEMBLY  PROCESS  THAT  INCLUDES 
ASSEMBLY  LANGUAGE  SOURCE  CODED  INSTRUC- 
TIONS WITH  COMMENTS.  SOMETIMES,  LINE 
STATEMENT  NUMBERS  ARE  INCLUDED  FOR  EACH 
INSTRUCTION.  BRANCH  TO  PAGE  101 


FEBRUARY  1977 


INTERFACE  AGE  93 


SOFTWARE  SECTION 


SHORT  SOFTWARE  ROUTINES 


Have  you  ever  been  suspicious  of  the  numbers  that 
your  version  of  BASIC  pumps  out  for  use  in  your 
favorite  computer  game?  Maybe  the  royal  rats  are  con- 
sistently eating  too  much  grain  in  the  game  of  KING- 
DOM, or  possibly  you  think  your  shields  are  absorbing 
energy  at  an  unreasonable  rate  in  STAR  TREK.  If  this 
sounds  familiar,  I  suggest  you  pay  a  visit  to  your 
favorite  psychiatrist  and  get  checked  out  for  a  perse- 
cution complex.  The  only  way  you  could  guess  that 
your  random  number  generator  was  a  lemon  is  if  it 
were  written  by  Maxwell's  Demon,  the  infamous  vio- 
later  of  the  Second  Law  of  thermodynamics. 


Need  A  Better  Random  Number  Generator? 


By  Bob  Martin 


There  is  a  right  number,  a  wrong 
number  and  a  random  number.  But 
when  is  the  right  number  a  wrong 
number  for  a  random  number? 


Having  said  that,  I  am  going  to  claim  anyway  that  I 
did  detect  a  bad  one  in  this  manner.  My  guess  that  it 
was  a  bad  generator,  turned  out  to  be  correct.  A  few 
weeks  back  I  wrote  a  Yahtzee  game  in  order  that  my 
wife  could  play  with  the  computer.  (This  is  a  good 
practice.  It  helps  to  reassure  her  that  the  money  we 
spent  on  it  was  well  worth  it.)  While  checking  out  the 
game  for  errors  I  noticed,  more  often  than  I  could 
believe,  that  the  game  ended  with  the  sixes  box  empty. 
How  many  games  with  zero  in  the  sixes  box  would  be 
believable? 

The  RND  function  in  BASIC  returns  a  decimal 
fraction  that  lies  between  zero  and  one.  Now  suppose 
you  have  ten  boxes  and  four  red  marbles  ...  No  wait! 
I'm  not  going  to  do  that.  Everybody  falls  asleep  when 
the  boxes  and  marbles  are  brought  out.  Let's  assume 
that  everyone  reading  this  likes  programming.  There- 
fore we  have  an  array  of  ten  elements  numbered  zero 
through  nine.  All  ten  elements  start  out  with  the  value 
zero.  We  will  now  call  upon  the  RND  function  to 
decide  which  of  the  ten  elements  to  increment  by  one. 
This  is  very  simple.  Just  let  X  =  INT  (10*RND(0)).  X 
will  now  be  the  number  of  the  element  that  is  to  be 
incremented.  Now  do  this  for,  say,  1000  calls  of  RND. 
If  RND  generated  truly  random  numbers,  would  it  be 
believable  if  each  element  had  the  value  100?  A  per- 
son who  had  not  studied  elementary  statistics  might 
be  surprised  to  learn  that  this  would  be  very  unbeliev- 
able. 

To  describe  just  how  unlikely  it  is  that  the  above 
result  was  produced  by  a  truly  random  generator,  let 
me  change  the  outcome  slightly.  I  will  change  it  to  a 
result  that  is  much  more  likely  to  have  been  produced 
by  a  real  random  number  generator.  Suppose  the  ten 
elements  turned  out  to  have  the  following  values:  four 
of  them  were  95.  four  were  1 05,  one  was  99  and  one 
was  101.  A  truly  random  RND  function  would  give  a 
result,  this  close  to  the  expected  result,  only  once  in 
100  trials  of  the  experiment.  (Each  experiment, 
remember,  was  1000  calls  of  RND.)  Yet  this  modified 
result  is  very  much  more  probable  than  the  case  where 
all  ten  elements  have  the  value  100. 


RND  FUNCTION  CHI-SQUARE  TEST 

You  might  wonder  how  such  things  can  be  deter- 


94  INTERFACE  AGE 


FEBRUARY  1977 


SOFTWARE  SECTION 


SHORT  SOFTWARE  ROUTINES 


mined.  It  is  made  possible  by  using  one  of  the  oldest 
statistical  tests  there  is.  This  test  is  called  the  chi- 
square  test  and  was  introduced  by  KaN  Pearson  in 
1900.  We  don't  care  right  now  why  it  works.  Let  that 
be  a  question  to  motivate  the  reading  of  some  mathe- 
matics. For  the  present  we  only  want  to  know  if  our 
random  number  generator  can  pass  the  chi-square 
test. 

To  make  this  test  we  must  calculate  a  number 
called  the  chi-square  statistic.  This  calculation  is  very  sim- 
ple for  a  random  number  generator.  First,  pick  the 
number  of  categories  you  wish  to  use.  In  the.  above  ex- 
ample the  number  was  ten.  Next  choose  the  number  of 
independent  observations  to  be  made.  We  used  1000. 
Now,  since  there  are  1000  numbers  that  can  fall  into 
10  categories,  we  would  expect  there  to  be  100  in 
each  of  them.  We  will  call  this  the  expected  value  even 
though  we  know  better  than  to  expect  it  too  often. 
Take  the  expected  value  and  subtract  it  from  the 
value  observed  in  each  category.  The  observed  values 
in  the  example  above  are  the  values  that  the  elements 
of  the  array  had  after  1000  calls  of  RND.  Take  the 
result  of  each  of  these  subtractions  and  square  it.  Now 
divide  each  of  them  by  the  expected  value.  To  get  the 
chi-square  statistic,  add  all  these  numbers  together.  In  the 
example  above,  you  will  have  to  sum  ten  numbers,  one 
for  each  category.  The  chi-square  statistic  for  the  modified 
example  above  is  2.02. 
HOW  TO  READ  THE  TEST  RESULTS 

Now  you  want  to  know  what  this  number  tells  you 
about  your  random  number  generator.  That's  easy.  It 
has  all  been  worked  out  for  you  in  a  table.  If  you  do  not 
like  tables,  fear  not.  The  chi-square  distribution  table  is 
simple.  The  only  thing  you  need  to  know  is  that  (for  our 
problem)  the  number  of  degrees  of  freedom  is  one  less 
than  the  number  of  categories.  We  had  ten  categories, 
therefore  we  had  nine  degrees  of  freedom.  Find  the 
row  in  the  table  labeled  with  the  number  9.  This  is  the 
only  row  of  data  that  will  pertain  to  your  generator. 
(You  would  use  a  different  row  if  you  had  chosen  a 
number  of  categories  other  than  ten.)  Now  find  the 
place  your  chi-square  statistic  falls  in  this  row  of  data. 
Each  number  in  the  row  also  has  a  number  at  the  top 
of  its  column.  This  is  the  number  that  interests  you.  It 
will  be  either  a  percentage  figure  or  a  decimal  fraction 
less  than  one. 

To  illustrate,  suppose  your  chi-square  statistic  is  2.09. 
Look  for  the  number  2.09  in  the  row  labeled  9.  At  the 
top  of  the  column  that  contains  2.09  you  will  find 
either  .99  or  99%.  What  this  number  means  is  the 
following:  If  your  random  number  generator  was  truly 
random,  then  99%  of  the  time  it  would  produce  a 
number  greater  than  2.09.  It  is  now  up  to  you  to 
decide  if  this  is  sufficiently  random  for  your  intended 
use  of  the  generator.  Since  99%  is  most  of  the  time, 
you  probably  would  not  accept  this.  The  same  goes  for 
the  other  end  of  the  row.  If  you  came  up  with  the  figure 
1%,  it  would  mean  the  ideal  generator  would  get  a  chi- 
square  larger  than  yours  only  1%  of  the  time. 

A  simple  way  to  proceed  is  to  declare  the  generator 
is  acceptable  if  it  falls  within  the  95  to  5  percent  range. 
For  the  9  degrees  of  freedom  we  have  been  using,  this 
amounts  to  saying  we  will  accept  the  generator  if  it 
can  produce  a  chi-square  statistic  that  lies  between  3.3 


and  16.9.  The  BASIC  program  given  below  may  be 
used  to  test  your  random  number  generator.  It  uses 
10,000  trials  of  RND  and  puts  them  in  10  categories. 
Notice  that  the  number  of  trials  has  no  effect  on  how 
the  table  is  used.  Only  the  number  of  degrees  of 
freedom  is  important. 

I  tried  this  program  with  my  three  versions  of 
BASIC.  The  results  were  so  poor  (chi-square  of  217  was 
typical)  that  I  had  to  recheck  the  chi-square  program  for 
errors.  A  moment's  thought,  of  course,  will  give  the 
reason  why  they  were  all  so  poor.  Why  take  up  more 
space  than  you  have  to  in  a  BASIC  interpreter,  if  most 
people  only  use  RND  to  play  STAR  TREK?  I  can  think 
of  a  couple  of  possible  reasons;  one  is  that  someday 
you  might  want  to  use  RND  for  something  besides  play- 
ing games.  Another  is  that  a  bad  RND  might  cause  you 
to  lose  more  games  than  is  good  for  your  self-image. 
Even  if  you  do  always  win  easily,  the  games  will  not  be 
fun  for  long  when  you  know  that  the  reason  you  win  is 
a  faulty  RND. 

JUST  HOW  GOOD  IS  YOUR  RND  FUNCTION 
GENERATOR? 

The  bottom  line  is  that  it  is  simply  more  satisfying  to 
have  a  good  RND.  Yahtzee  feels  better  if  you  know 
your  computer  dice  are  as  good  as  real  ones.  So  try  the 
test  program  (unless  you  wish  to  remain  forever  in 
doubt)  and  if  your  RND  fails,  I  have  a  solution  below 
for  you.  I  might  give  one  word  of  caution  here  that  will 
serve  as  an  incentive  to  read  on.  Even  if  your  RND 
passes  the  test,  it  is  not  insured  that  your  generator  is 
perfect.  There  is  a  whole  battery  of  tests  that  may  be 
•run.  One  such  test  is  called  the  serial  test  which  checks 
to  make  sure  you  don't  have  too  many  ascending  or 
descending  sequences  of  numbers.  A  socalled  feedback 
generator  will  often  fail  this  test.  The  generator  I  give 
below  in  8080  code  can  pass  many  of  the  tests  for 
randomness. 

A  BETTER  RND  FUNCTION  GENERATOR 

The  method  used  here,  to  generate  a  sequence  of 
random  numbers,  is  a  very  common  one  called  the 
mixed  linear  congruential  method.  It  works  like  this. 
The  previous  random  number  (you  must  supply  the 
very  first  number  called  the  seed)  is  multipled  by  a 
number  called  the  multiplier.  To  this  is  added  another 
number  called  the  constant.  Then  still  another  number 
called  the  modulus  is  repeatedly  subtracted  from  the 
result  until  the  result  is  less  than  the  modulus.  This  will 
then  be  the  new  random  number.  The  whole  process  is 
repeated  over  and  over,  producing  a  sequence  of 
numbers  all  of  which  are  less  than  the  modulus.  If  each 
new  random  number  is  always  divided  by  the  modulus, 
the  result  will  be  a  sequence  of  numbers  that  are  just 
what  RND  is  supposed  to  produce,  a  sequence  of  ran- 
dom numbers  that  ail  lie  between  zero  and  one.  It  will 
be  a  random  sequence  provided  that  multiplier,  constant 
and  modulus  are  chosen  properly. 

A  look  at  the  8080  RND  function  generator 
program  will  reveal  two  familiar  strings  of  digits  used 
for  the  multiplier  and  constant.  The  number  used  for  the 
modulus  is  2  raised  to  the  35th  power.  This  makes  it  es- 
pecially easy  to  do  the  repeated  subtraction  of  the 
modulus  when  the  arithmetic  is  done  in  binary.  In  fact,  it 


FEBRUARY  1977 


INTERFACE  AGE  95 


SOFTWARE  SECTION 


SHORT  SOFTWARE  ROUTINES 


There  are  many  areas  to  consider  for 
the  implementation  of  a  good  random 
number  generator 


AW 


AW 


1? 


8&  2r 


aft 


J*1 


doesn't  need  to  be  done  at  all.  Just  ignore  all  bits 
higher  than  35  and  the  modulus  operation  is  taken  care 
of  automatically.  Since  the  number  of  bits  is  finite  we 
cannot  produce  an  infinite  sequence  of  numbers.  At 
some  point  the  generator  must  repeat  a  number  that 
was  produced  earlier.  When  this  happens  the  whole 
pattern  will  also  be  repeated  because  the  current 
number  is  always  constructed  from  the  immediately 
preceding  number. 

The  above  generator  will  give  through  all  possible 
35  bit  numbers  before  it  repeats.  You  may  have 
noticed  that  the  familiar  numbers  used  are  not  what 
they  should  be  in  the  last  digit  of  each.  They  were 
changed  so  as  to  meet  the  conditions  of  a  theorem  that 
guarantees  the  generator  will  go  without  repeating  as 
long  as  possible.  In  this  case  it  will  run  for  about  2  to 
the  35th  or  34  billion  numbers.  To  call  the  RND 
function  this  many  times  on  my  little  micro  would  con- 
sume 1 1  years  of  around-the-clock  computer  time.  Of 
course  a  long  period  is  no  guarantee  of  randomness. 
Counting  from  zero  to  34  billion  gives  a  sequence  of 
long  period  which  is  obviously  not  random.  The 
parameters  given  above  provide  for  both  a  long  period 
and  randomness. 

APPLICATION  OF  RND  FUNCTION  GENERATOR 

There  are  a  couple  of  things  you  must  know  to  use 
this  generator.  If  you  want  to  repeat  a  given  sequence 
of  numbers,  then  locations  29AB  through  29AF  must 
be  initialized  with  the  same  number  each  time  you 
want  to  run  the  sequence.  The  fact  that  a  sequence  is 
reproducible  is  the  reason  these  generators  are  called 
psuedo-random.  If  you  don't  care  about  being  able  to 
repeat  a  sequence  then  don't  worry  about  what  seed  is 
at  these  locations.  Since  the  generator  is  of  maximum 
period  there  is  no  seed  than  can  get  you  hung  up  in  a 
shorter  period  sequence. 

Another  thing  to  know  concerns  returning  the  ran- 
dom number  to  your  BASIC  interpreter.  The  last  part  of 
the  routine  converts  the  binary  random  number  in 
29AB  -  29AF  into  a  BCD  number  and  puts  it  in  loca- 
tions 29B0  through  29B5.  This  number  must  now  be 
made  compatible  with  the  floating  point  representa- 
tion of  your  BASIC  interpreter.  This  is  necessary 
because  the  BCD  number  must  be  divided  by  the 
modulus  so  that  the  final  result  lies  between  0  and  1.  A 
better  method  is  to  multiply  by  the  inverse  of  the 
modulus  (2  to  the  minus  35th  or  2.91038E-1  1).  Jump 
to  your  routine  that  does  this  preparation  and  multi- 
plication from  location  299F.  A  return  after  the  multi- 
plication should  return  to  whatever  called  RND. 

Remember  that  if  your  BASIC  uses  only  six 
significant  digits  then  only  six  digits  of  the  BCD 
number  are  required.  This  will  mean  that  a  given 
number  returned  by  RND  will  show  up  more  often  than 
once  every  34  billion  calls.  However  the  pattern  in  the 
sequence  before  and  after  it  will  be  different. 

RND  FUNCTION  APPLICATIONS 

Now  that  you  have  a  fairly  decent  RND,  what  can 
you  do  with  it  besides  play  games?  One  demonstra- 
tion is  a  simple  example  of  what  is  called  a  Monte 
Carlo  simulation.  Try  to  calculate  the  number  Pi  by 
using  RN  D:  Draw  a  unit  circle.  Enclose  the  circle  with  a 


96  INTERFACE  AGE 


FEBRUARY  1977 


SOFTWARE  SECTION 


square  that  touches  it  at  four  points.  Now  use  RND,  in 
a  BASIC  program,  to  shoot  darts  over  the  entire  area  of 
the  square.  Count  both  the  total  number  of  darts 
thrown  and  the  number  of  these  that  fall  inside  the 
circle.  The  ratio  of  the  darts  inside  to  the  total  number 
is  the  same  as  the  ratio  of  the  area  of  the  circle  to  that 
of  the  square.  The  area  of  the  circle  is  just  Pi  and  the 
area  of  the  square  is  four.  Therefore  multiply  the  dart 
ratio  by  four  to  get  Pi. 

If  you  should  want  to  try  this,  here  are  two  things  to 
make  it  easier.  First,  use  only  the  first  quadrant. 
Second,  when  deciding  if  the  dart  is  inside  or  outside 
the  circle,  there  is  no  need  to  take  the  square  root  (unit 
circle).  When  I  tried  this  on  my  computer  with  16,000 
darts  1 4  different  times,  I  got  the  following  results:  Old 
bad  RND,  Pi  =  3. 07778;  New  good  RND. 
Pi  =  3. 14128.  Both  had  a  standard  deviation  of  .01. 
This  method  may  be  used  to  find  volumes,  masses, 
centers  of  mass  etc.,  on  more  complcated  objects  that 
cannot  be  calculated  exactly  by  other  means. 

Here  is  one  more  application  which,  even  though 
unrealistic,  might  give  you  some  other  ideas.  Suppose 
you  know  the  average  lifetime  and  the  standard  devia- 
tion of  the  chips  in  your  65K  memory  system.  As  the 
time  approaches  for  the  end  of  the  first  lifetime,  more 
and  more  chips  must  be  replaced  one  at  a  time.  You 
might  wonder  if  there  is  a  time  when  it  would  be 
cheaper  to  just  replace  all  the  memory  at  once.  Factors 
that  would  influence  you  to  make  a  total  replacement 
are:  (1 )  discount  price  on  large  quantity  of  chips;  (2)  no 
time  is  wasted  hunting  for  bad  chips.  Of  course  this  is 
unrealistic  because  these  factors  would  have  to  be 
greatly  exaggerated  before  even  one  total  replace- 
ment would  be  considered  reasonable. 

One  way  you  might  want  to  simulate  this  problem  is 
to  consider  each  chip  separately.  As  you  come  to  each 
chip  you  want  an  answer  to  the  question,  "How  long 
before  this  chip  will  break  down?"  To  get  the  answer 
just  use  the  BASIC  subroutine  given  below.  Pass  it  the 
mean  lifetime  of  a  chip  (M 1 )  and  the  standard 
deviation  of  this  lifetime  (D1)  and  it  will  return  the 
amount  of  time  until  the  next  breakdown  (X)  for  that 
chip.  The  subroutine  uses  the  Center  Limit  approach  to 
simulate  a  normal  distribution  with  the  given 
parameters.  Now  run  through  the  history  of  each  chip 
for  a  given  period  of  time,  say,  five  years.  Record  the 
cost  of  each  individual  breakdown  and  the  cost  of  each 
replacement  of  all  65K.  The  number  of  times  the  65K 
is  replaced  in  five  years  is  determined  by  the  time 
between  replacements  that  you  have  selected.  Run 
through  all  the  chips  for  the  five  year  simulation  with 
your  first  selection  for  this  amount  of  time.  Then  try  it 
again  for  another  time;  and  another.  Vary  this  time  (in 
a  systematic  fashion)  until  the  toal  cost  of  main- 
tenance for  a  five  year  period  is  a  minimum.  When 
the  minimum  is  found  you  have  the  answer  to  your 
problem. 

SUPER  RND  FUNCTION  GENERATOR 

One  final  note.  If  by  chance  the  given  generator 
should  fail  to  be  random  in  some  application  you  might 
dream  up,  there  is  a  plan  for  the  Super  Random 


II 


i 


LEAR-SI  EG LER  MODEL  ADM 
VIDEO  TERMINAL  (24  X  80) 
KIT  ONLY  WHILE  SUPPLY  LASTS 

SEALS  8K  MEMORY 

KIT  ONLY  WHILE  SUPPLY  LASTS 

CROMEMCO  TV  DAZZLER 
KIT  ONLY  WHILE  SUPPLY  LASTS 

CROMEMCO  BYTESAVER 
KIT  ONLY  WHILE  SUPPLY  LASTS 

TVT  TYPEWRITER  KIT 
WITH  BOARD 

KIT  ONLY  WHILE  SUPPLY  LASTS 

CONTROL  DEVELOPMENT 
CORPORATION  KEYBOARD 

KIT  ONLY  WHILE  SUPPLY  LASTS 

BOOKS:  BASIC  BASIC 

ADVANCED  BASIC 


3K 

$799  oo 

$235.00 
$189.00 


175. 


00 


125. 


00 


$70  oo 

$595 

$R  95 


COMPUTER  CLUB  MEMBERS 

SEND  US  A  SELF-ADDRESSED  STAMPED 
ENVELOPE  AND  ENCLOSE  THE  NAME, 
ADDRESS  AND  PHONE  NUMBER  OF  THE 
COMPUTER  CLUB  YOU  BELONG  TO  AND  WE 
WILL  SEND  YOU  SPECIAL  COUPONS  GOOD 
TOWARDS  THE  PURCHASE  OF  UN- 
ADVERTISED  SPECIALS  ON  MERCHANDISE 
AND  BOOKS. 

LET  US  SHOW  YOU  HOW  YOU  CAN  SAVE 


TO  PLACE  ORDERS 

CALL  OR  WRITE  TO:       DATA  IV,  INC. 


ASK  FOR  OUR  CATALOG 
OF  DISCOUNT  PRICES  ON 
PRODUCTS  FROM:  IMS, 
CROMEMCO,  LEAR- 
SIEGLER,  TDL  AND  MANY 
OTHERS. 


5706  BARRYMORE  DRIVE 
CENTREVILLE,  VA.  22020 
(703)  524-9335 


MAIL  ORDERS  SHIPPED  PREPAID  IF  FULLY  PAID  WITH  ORDER 
25%  OF  AMOUNT  PURCHASED  IN  ADVANCE  WITH  C.O.D.  ORDERS 
VIRGINIA  RESIDENTS  ADD  4%  SALES  TAX 


ALL  PRICES  and  SPECIFICATIONS  SUBJECT  TO  CHANGE 
WITHOUT  NOTICE 

CHECK  or  MONEY  ORDER  ONLY 
CIRCLE  INQUIRY  NO.  57 


FEBRUARY  1977 


INTERFACE  AGE  97 


SOFTWARE  SECTION 


SHORT  SOFTWARE  ROUTINES 


Number  Generator.  It  was  suggested  by  McLaren  and 
Marsaglia  and  is  said  to  meet  anyone's  criteria  for 
psuedo-randomness.  To  accomplish  this,  two  gen- 
erators are  required.  Let  the  generator  given  above 
be  called  generator  A.  To  construct  generator  B,  simply 
exchange  the  values  of  multiplier  and  constant  of 
generator  A.  Use  generator  A  to  lay  out  a  list  of  about 
100  random  numbers.  Use  generator  B  to  decide 
which  of  these  100  will  be  the  next  in  our  Super  Se- 
quence. The  number  which  is  used  will  be  removed 

RND  FUNCTION  GENE 


from  the  list  and  replaced  by  a  new  number  given  by 
generator  A.  The  whole  process  is  repeated  for  the 
next  number  in  the  Super  Sequence. 

In  summary  I  wish  to  encourage  you  to  dump  that 
old  mantra  you  have  been  using  and  begin  chanting 
RND  to  experience  the  true  chaos  of  the  universe. 

SEE  MICROCOMPUTER  SOFTWARE  DEPOSITORY 
PROGRAM  INDEX  FOR  COPIES  OF  THIS  PROGRAM 

R  FLOW  DIAGRAMS 


FORM  PRODUCT  OF 
LAST  RND  #  WITH 
MULTIPLIER  (BINARY 
MULTIPLY  OF  4X  5  BYTES) 


RSPC: 

5  BYTES  FOR  PREVIOUS 

BINARY  RANDOM  NUMBER 

MULT: 

4  BYTES  FOR 

BINARY  MULTIPLIER 

WKSP: 

USE  5  BYTES  AS 

TEMPORY  STORAGE 

FOR  PRODUCT 

INITIALIZE  MULT 
ANO  RSPC  POINTERS 
TO  LOW  Q R D£ R  BYTES 


SET  MULT 
SYTE  COUNTED 


SET  MULT 
B17  COUNTER 


2 


SHIFT  5  BYTES  OF 
RSPC  LEFT  ONE  BIT 
AS  IF  IT  WERE  ONE 

BIG  40  BIT  WORD 


RESET  iPOPl  MULT 
AMD  RSPC  POINTERS 
TO  PROPER  BYTE 


PUSH  BYTE 
COUNTER 


PUSH  MULT  ANO 
RSPC  POINTERS 

i 


CALCULATE  NUMBER  OF  BYTES 
NEEDED  TO  ADD 
SAVE  IN  8  REGISTER 


CALCULATE  POINTER 
FOR  WKSP 


ADD  NEXT  BYTE 
OF  RSPC  TO 
WKSP  WITH  CAflflY 


DECREMENT 
POINTERS  ANO 
5  REGISTER  Sv  l 


DECREMENT  MULT 
SIT  COUNTER  BY  I 


DECREMENT  MULT 
AND  RSPC  POINTERS. 
POP  BYTE  COUNT 
AND  DECREMENT 
IT  BY  1 


98  INTERFACE  AGE 


FEBRUARY  1977 


SOFTWARE  SECTION 


SHORT  SOFTWARE  ROUTINES 


ADD  THE  CONSTANT  TO 
THE  RESULT  (WKSP) 
BINARY  ADD  OF  4  BYTES 


PDH$:  4BYTES  FOR 

BINARY  tX3MSTAHT 


INITIALIZE  POINTERS 
FOfl  CONS.  WK&P 
MP  F5PC 


CLEAH  C&nflV 
SET  BYTE  COUNT  EN 
TO  5 


byte  cou^tia 

AT  ACOH 


CONVERT  BINARY  RANDOM 
NUMBER  TO  BCD  BY 
POLYNOMIAL  EVALVATION 
USING  HORNER'S  METHOD 


ADD  WITH  CAHHv  TO 
CORFfESr*DWBlNti  6Y1E 
OF  WKSP 


SAVE  RESULT  IN 
CtJBflESPOMDINC  &YTE 
Of  flSPC 


DECREMENT  PDiMtRf! 

ton  cows  wksp 

AND  PS  PC 


GET  BYTE  COUNT 
FROM  ACON  AND 
DECREMENT  ft  BY  I 


M*KE  1"  BYTE  0»  H.&PL 

MOD  lfl  INITiAi  (IE 
bit  AND  BYTE  COUNTERS 
PUSH  IMEM 


CLEAR  CARRY 
SET  BYTE  COUNT 

FOR  WKSP 
INITIALIZE  WKSP 
POINTER 


DOUBLE  NEXT  BCD 
BYTE  OF  WKSP 
+  CARRY. 
DECIMAL  ADJUST  IT 

DECREMENT 
BYTE  COUNT  BY  1 


FILL  WKSP 
WITH  ZEROES 


GET  NE*T  BIT 
OF  BINARY 
AAWDOM  NUMBER 


SET  CflUNTEfl 
INITIALIZE  POINTER 
PLTH  wksp 


PUT  ZERO  IN  NEXT 
BYTE.  INCREMENT 
POINTER.  DECREMENT 
COUNTER  BY  1 


aiUHTtf)  pr  l 


PDP  EYtE  COUNT 


INCREMENT  flSPC 
POINTER  SET  HIT 
COONTEfl  TO  B 


CONVERT  BCD 
IN  WKSP  TO  A 
FORM  COMPATABLE 
WITH  FLOATING 
POINT  REPRESEN- 
TATION OF  SYSTEM. 
MULTIPLY  IT 
BY  2  " 


^    RETUHTf  ^ 


ADD  ONE  TO  WKSP 
PROPIGATE  CARRIES 
THROUGH  BYTES 
DECIMAL  ADJUST 
AFTER  EACH  CARRY 


Add  the  constant  to  the  result  (WKSP)  binary  ADD  of  4 
bytes 


FEBRUARY  1977 


Convert  binary  random  number  to  BCD  by  polynomial 
evaluation  using  Horner's  method 


INTERFACE  AGE  99 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


RND  FUNCTION  GENERATOR  PROGRAM 


2900 
2903 
2906 
2909 
290B 
290D 
290E 
290F 
2910 
291  1 
2912 
2913 
2916 
2919 
291 A 
291B 
291E 
29  IF 
2920 
2921 
2922 
2923 
292/f 
2925 
2928 
2929 
292C 
292E 
292F 
2930 
2931 
2932 
2933 
2936 
2937 
2938 
2939 
293C 
293D 
293E 
293F 
29^0 


CDBB29 

21A529 

1 1AF29 

0605 

OE08 

C5 

D5 

E5 

7E 

OF 

77 

D22929 
2156D6 

19 

i*3 

210500 
19 

1A 
8E 
77 
2B 
IB 
05 

C21F29 
AF 

1 1AF29 

0605 

1A 

17 

13 

IB 

05 

C22E29 
E 1 
D1 
OD 

C20E2 . 

CI 

2B 

111 

Oj 

C20B29 


29*t3  01AA29 
29^6  21B/f29 
2^9  1  1AF29 
Z%t  AF 
29^fD  3E05 
29^fF  32BA29 

2952  OA 

2953  8E 
295*t  12 

2955  OB 

2956  IB 

2957  2B 


TITLE    /RANDOM  NUMBER  GENERATOR/ 

THIS  ROUTINE  GENERATES  RANDOM  NUMBERS  BY 
THE  LINEAR  CONGRUENTIAL  METHOD  (MIXED) 

FORM  THE  PRODUCT  OF  THE  LAST  RANDOM 
NUMBER  WITH  THE  MULTIPLIER 

RND: 


ADCL: 


CALL  ZERO 

CLEAR  WORK  SPACE 

LXI  H.MULT+3 

POINT  TO  MULTIPLIER 

LXI  D,RSPC+/f 
MVI  B,5 

POINT  TO  LAST  RND  NUM 

SET  BYTE  COUNT 

MVI  C,8 

SET  BIT  COUNT 

PUSH  B 

SAVE  BYTE  COUNT 

PUSH  D 

SAVE  BEG  OF  ADD 

PUSH  H 

CURRENT  BYTE  OF  MULTIPLIER 

MOV  A,M 

GET  BYTE  OF  MULTIPLIER 

RRC 

ROTATE  IT 

MOV  M  A 

PUT  IT  BACK 

JNC  NOBT 

JUMP  IF  NOTHING  TO  ADD 

LXI  H,-RSPC-1 

LIMIT  OF  RND  NUM 

DAD  D 

CALC.   COUNT  TIL  END 

MOV  B,L 

SAVE  COUNT 

LXI  H,5 

RESULT  GOES  - 

DAD  D 

5  BYTES  DOWN 

LDAX  D 

TST  JJEXT  BYTE  TO  ADD 

ADC  H 

ADD  TO  EET.ULT 

MOV  M,A 

SAVE  IT 

DCX  II 

NEXT  BYTE  JF  RESULT 

DCX  D 

NEXT  BYTE  TO  ADD 

DCR  B 

ONE  BYTE  DOWN 

JNZ  ADCL 

LOOP  IF  NOT  DONE 

XRA  A 

CLEAR  CARRY 

LXI  D,RSPC+/f 

POINT  TO  START  AGAIN 

MVI  B,5 

SET  COUNT 

LDAX  D 

GET  NEXT  BYTE  OF  LAST  RND  NUM 

RAL 

SHIFT  LEFT 

STAX  D 

;PUT  IT  BACK 

DCX  D 

ON  TO  NEXT  BYTE 

DCR  B 

DCR  COUNT 

JNZ  SHFR 

LOOP  IF  MORE 

POP  I 

RESET  H  TO  MULTIPLIER 

POP  D 

RESET  D  FOR  ADD 

DCR  C 

ONE  BIT  OF  MULT  DONE 

JNZ  a\V'D 

LOOP  IF  NOT  DONE 

POP  B 

GET  BYTE  COUNT 

DCX  H 

ANOTHER  BYTE  DONE 

DCX  D 

ADD  POINT  MOVES  DOWN  1  BYTE 

DCR  B 

DCR  COUNT 

JNZ  BITC 

LOOP  IF  MORE  BYTES  OF  MULT 

ADD  THE  CONSTANT  TO  THE  RESULT 


LXI  B.CONS+3 
LXI  H.WKSP+/+ 
LXI  D,RSPC+/f 
XRA  A 
MVI  A, 5 
STA  CNT 
LDAX  B 
ADC  M 
STAX  D 
DCX  B 
DCX  D 
DCX  H 


POINT  TO  CONSTANT 

RESULT  OF  MULT 

PLACE  FOR  NEW  RND  HUH 

CLEAR  CARRY 

SET  COUNT 

SAVE  IT 

GET  NEXT  BYTE 

ADD  THE  PRODUCT 

SAVE  RESULT 

BUMP 

ALL 

POINTERS 


2958  3ABA29 
295B  3D 
295C  C2/fF29 


LDA  CNT 
DCR  A 
JNZ  ACON 


GET  COUNT 
DECREMENT  IT 
LOOP  IF  ANY  LEFT 


CONVERT  BINARY  RANDOM  NUM  TO  BCD 


295F  CDBB29 

CALL  ZERO  ; 

CLEAR  WORK  SPACE 

2962  1 1AB29 

LXI  D,RSPC  ; 

POINT  TO  BIN  RND  NUM 

2965  1A 

LDAX  D  ; 

GET  FIRST  BYTE 

2966  OF 

RRC 

MAKE  IT  - 

2967  OF 

RRC 

MOD  - 

2968  OF 

RRC 

2»»35  (POWER) 

2969  12 

STAX  D 

PUT  IT  BACK 

296A  OIO305 

LXI  B.503H 

PREPARE  TO  JUMP  - 

296D  C5 

PUSH  B 

INTO  THE  MIDDLE 

296E  C37529 

JMP  DLB1 

DO  IT 

2971  13 

DLB: 

INX  D 

NEXT  BYTE  OF  BIN  RND 

2972  C5 

PUSH  B 

SAVE  BYTE  COUNT 

2973  OE08 

MVI  C,8 

BIT  COUNT 

2975  AF 

DLB1: 

XRA  A 

CLEAR  CARRY 

2976  0606 

MVI  B,6 

BYTE  COUNT  FOR  WKSP 

2978  21B529 

LXI  H,  WKSP*  5 

LOW  ORD  OF  BCD  RND  NUM 

297B  7E 

TTIM: 

MOV  A,M 

GET  NEXT  2  DIGITS 

297c  8f 

ADC  A 

DOUBLE  THEM 

297D  27 

DAA 

MAKE  IT  DECIMAL 

297E  77 

MOV  M, A 

PUT  IT  BACK 

297F  2B 

DCX  H 

MOVE  TO  NEXT  HIGHER  ORDER 

2980  05 

DCR  B 

DCR  COUNTER 

2981  C27B29 

JNZ  TTIM 

LOOP  IF  MORE 

298*t  1 A 

LDAX  D 

GET  BYTE  OF  BIN  RND  NUM 

2985  07 

RLC 

CHECK  FOR  BIT 

2986  12 

STAX  D 

PUT  IT  BACK 

2987  D29629 

JNC  MBT 

JUMP  IF  NO  BIT 

298A  21B529 

LXI  H,WKSP*5 

BCD  RND  NUM 

298D  7E 

PLUS: 

MOV  A,M 

GET  BYTE  OF  RND  NUM 

298E  CEOO 

ACI  0 

PROP I GATE  THE  CARRY 

2990  27 

DAA 

DECIMALIZE 

2991  77 

MOV  M, A 

PUT  IT  BACK 

2992  2B 

DCX  H 

;ONE  DOWN 

2993  DA8D29 

JC  PLUS 

; DONE  IF  NOTHING  TO  CARRY 

2996  OD 

MBT: 

DCR  C 

; DONE  WITH  1  BIT  OF  BIN  NUM 

2997  C27529 

JNZ  DBL1 

;LOOP  IF  MORE  IN  THIS  BYTE 

299A  CI 

POP  B 

; GET  BACK  BYTE  COUNT 

299B  05 

DCR  B 

DECREMENT  IT 

299C  C27129 

JNZ  DLB 

LOOP  IF  ANY  LEFT 

299F  C3XXXX 

JMP 

GOTO  DIV  ROUP.-  U  SUPPLY 

29A2  BB/fO 

MULT: 

DW  '+03BH 

;3  I'll  592653 

29A/f  E6*fD 

DW  !fI-E6H 

;THE  MULTIPLIER 

29A6  00 

DB  0 

;ZERO  NEEDED  HERE 

29A7  A205 

CONS: 

DW  5A2H 

; 271 828 1829 

29A9  B065 

DW  65BOH 

;THE  CONSTANT 

29AB 

SPC: 

DS  1 

; STORAGE  FOR  BIN  RND  NUM 

29B0 

WKSP: 

DS1 

; STORAGE  FOR  BCD  RND  NUM 

29BA 

CNT: 

DS1 

; XTRA  COUNT 

29BB  01000A 
29BE  21B029 
29C1  71 
29C2  23 

29C3  05 

29C/f  C2C129 
29C7  C9 


ROUTINE  TO  CLEAR  WKSP 


ZERO: 


LXI  B.OAOOH 
LXI  H.WKSP 
MOV  H,C 
INX  H 
DCR  B 
JNZ  ZER1 
RET 


COUNTER  AND  ZERO 
PLACE  TO  BE  CLEARED 
PUT  ZERO  IN  NEXT  BYTE 
NEXT'  BYTE 
DOWN  WITH  COUNT- 
LOOP  TIL  D'NE 
BACK  TO  WO  5K 


RND  FUNCTION  GENERATOR  CHI-SQUARE  TEST  PROGRAM 


5  REM  CKI-SQUARE  TEST 
10  DIM  A(9) 
20  K=10 
30  N=10000 

35  REM  ZERO  THE  ELEMENTS 

<*0  FOR  J=0  TO  K-l 

50  A(J)=0;NEXT  J 

55  REM  LET  RND  FILL  THE  ARRAY 

60  FOR  J=1  TO  N 

70  B=INT(K*RND(0 ) ) 

80  A(B)=A(B)*1 

90  NEXT  J 

95  REM  CALC.  CHI-SQUARE 
100  D=0 

1 10  FOR  J=0  TO  K-1 
120  C=A(J)-N/K 
130  D=D-C*C 
IZfO  NEXT  J 

150  PRINT  "CHI-SQUARE  STATISTIC  =  ",K*D/N 
160  STOP 


500  REM  THIS  ROUTINE  RETURNS  A 

501  REM  NORMALY  DISTRIBUTED  RANDOM 

502  REM  VARIATE  WITH  PARAMETERS  D1  AND  Ml 
505  X=-6 

510  FOR  K=1  TO  12 
520  X=X*RND(0) 
530  NEXT  K 
5*fO  X=X-D1*M1 
550  RETURN 


100  INTERFACE  AGE 


FEBRUARY  1977 


SOFTWARE  SECTION 


SOFTWARE  EDITORIAL 


VECTORED  FROM  PAGE  93 

SOURCE  CODE:  SAME  CONTENT  AS  SOURCE  LISTING  BUT 
HAND  ASSEMBLED. 

OBJECT  LISTING:  SOFTWARE  PROGRAM  LISTING 
RESULTING  FROM  COMPUTER  SOFTWARE 
CONTROLLED  ASSEMBLY  PROCESS  THAT  ONLY 
INCLUDES  MACHINE  READABLE  OBJECT  CODED 
INSTRUCTIONS  AND  MEMORY  ADDRESS 
ASSIGNMENTS. 

OBJECT  CODE  SAME  CONTENT  AS  OBJECT  LISTING  BUT 

HAND  ASSEMBLED. 

HARD  COPY:  XEROX  OR  PRINTED  COPY 

CODE:  HAND  ASSEMBLED  CODE  (SOURCE,  OBJECT,  OR 

ASSEMBLY  CODE). 

LISTING:  COMPUTER  FORMATED  LISTING. 
DUMP:  COMPUTER  MEMORY  DUMP. 


MSD  PROGRAMS 


CPU 
TYPE 


SYMBOLIC  DESCRIPTIVE 


MSD  0 
MEDIA 


6502    APPLECD     6502  APPLE  COMPUTER 

DISASSEMBLER   BY   ALLEN  BAUM 
A    STEPHEN   WO  ZNIAK -INTERFACE 
AGE/    SEPT.    1976,    VOL. I, #10. 


B080     LPT  I  I HF 


8080  DBBDP 


LOAD   8080  PAPER  TAPE  IN 
INTEL   HEX   FORMAT  BY  BURT 
HASHIZUME- INTERFACE  AGE, 
OCT.    1976/    VOL.1, #11. 


8080   BINARY    FILES  WITH 
OPTIONAL   AUTOSTART  BY 
WILLIAM    H.  JORDAN-INTERFACE 
AGE,    OCT.    1976,    VOL.  1  ,  0  1  1  - 


MIN  OPERATING   SYSTEM  BY  ED 
KEITH   A  DENNIS  HESCOX- 
I N T ERF ACE  AGE,    OCT.  1976* 
VOL-  1 , *  I  I .    PTAL  +  INCLUDES 
OPERATING  INSTRUCTIONS, 
PAPER  TAPE    FORMAT  ANO 
SAMPLE  RUN 

DR.  BEATTIE'S  RASIC  D 1  FT 
PLANNING  BY  DR.  BEATTIF- 
I NTERF ACE  AGE,  OCT-  1976, 
VOL •  1 , 0  11  . 


6800     EZMERPS     ECHO    I,    ZERO   MEMORY,  ECHO 

REVERSE  I   PRINT  SUBROUTINES 
BY   HOWARD  BERFNBON- 
I NTERFACE  AGE,    OCT.  1976, 
VOL  -  I,  0  I  1  . 

8080      ESP-  1  ESP-1    SOFTWARE  PACKAGE  BY 

MICHAEL    SHRAYER- INTERFACE 
AGE,    OCT.    1976,    VOL.  I, #11. 
PTGR   IS  PAPER  TAPE  COPY  OF 
GRAMMAR. 


8080  PTSP-l 


8080  ERAMMT 


PROCESSOR  TECHNOLOGY 
SOFTWARE  PACKAGE  NO.  1 
SUMMARY    BY    R.    A.  STEVENS- 
INTERFACE  AGE,    OCT.  1976, 
VOL.  I  , 0  I  I  > 

EXHAUSTIVE  8080  RAM  MEMORY 
TEST  PROGRAM  BY  T.E.TRAVIS 
-INTERFACE  AGE,  NOV.  1976, 
VOL.  1,  0  12. 


MFMDMP- I    SWTPC    6800   MEMORY  DUMP 

PROGRAM   MEMDMP-I    BY  GARY 
KAY- INTERFACE   AGE,  NOV. 
1976,    VOL.  I, #12. 


6800     ROB  IT -I 


SWTPC    6800    ROTATING  BIT 
RAM  MEMORY  DIAGNOSTIC 
PROGRAM   ROBIT-1    BY  GARY 
KAY -INTERFACE  AGE,  NOV. 
1976,    VOL. I, #12. 


MEMCON-l    SWTPC    6800    SHORT  MEMORY 
ADDRESS  CONVERGENCE 
PROGRAM  MEMCON-l    BY  GARY 
KAY-INTERFACE  AGE,  NOV. 
1976,    VOL.1, #12- 


I  -TEXT 
1  - HCAL 
I  -PACK 


PRICE    IN  $ 
♦CALIF-  TAX(*) 
♦USA  POSTAGEC : 


2.00  +  0.  12+ 1 .00 
INC.    WITH  TEXT 


2-PTAL   <   0  5.00+0.30+1.00 


2-TEXT 
2-HCAL 

2-  PACK 

3-  PTAL 
3-PTOD 

3-TEXT 
3 -HCAL 

3-  PACK 

4-  PTAL+ 
4-PTOD 

4-TFXT 
4-HCAL 
4-PACK 


5-TFXT  < 

5-HCBL  * 

5-PTBL  < 

5-  PACK  < 

6-  PTAL  < 

6-TEXT  - 

6-HCAL  * 

6-  PACK  I 

7-  PTOD  <2 
7-MAN  * 
7-CTOD  * 
7-MAN  * 
7-PTGR  * 
7-TEXT  - 
7-HCGR  ♦ 

7-  PACK  » 

8-  PTTL  <7, 
8-TEXT  < 
8-PACK  1 


2.R0+0. 1 2+ 1 . 00 
INC.    I'M  TH  TEXT 


5.00+0. 30+ I .00 
INC.    WITH  PTAL 


2.00  +  0.  12+ 1 . 00 
INC.    WITH  TEXT 


5.00+0. 30+ 1 . 00 
INC.    WITH  PTAL 


2.00  +  0.  12+1.00 
INC.    WITH  TFXT 


2.00  +  0.  12+  1  . 00 
INC.  WITH  TFXT 
5.00+0. 30+ I . 00 


3.00  +  0.  18+1.00 


1.00+0.06+1 .00 
INC.    WITH  TEXT 


30. 00+ 1 . 80+ I . 50 
INC.    WITH  PTOD 

30.00+  1.  80+  I.  50 
INC.  WITH  CTOD 
5.00+0. 30+ I . 50 
INC.  WITH  PTGR 
INC.    WI  TH  MAN 


A. 00+0. 24+ 1 . 50 
INC.    WITH  PTTL 


9- PTAL    <    0        fl-dlWfl.J).,!  I  .ttfl 


6800  BJIB 


BLACKJACK    IN  BASIC 
PROGRAM  BY   ED   KEITH  ft 
DENNIS   HESCOX.    THE  BJIE 


9-PTOD 
9-TEXT 
9-HCAL 
9-HCOD 
9-PACK 

10-PTAL 
10-PTSL 
I0-PTOD 
I 0-TEXT 
10-HCAL 

1 0-  PACK 

1 1 -  PTAL 
I  l-PTSL 

1 1-  PTOD 
1  1 -TEXT 
I  1  -HCAL 
1  1  -PACK 

12-  PTAL 
12-PTSL 
I2-PT0D 
1 2-TEXT 
12-HCAL 

1 2-  PACK 

1 3-  PTBL 

1 3-PTBL+ 


INC.  WITH  PTAL 
1  .  00  +  0.06+  1  .  00 
INC.  WITH  TEXT 
INC.    WITH  TEXT 


3-00+0. 18+1. W0 
3-00+0. 18+1.00 
INC.  WITH  PTSL 
1  .00  +  0.06+ I  .  00 
INC.    WITH  TEXT 


3.00  +  0.  18+ 1 . 00 
3.00  +  0.  I  8+ I  -  00 
INC.  WITH  PTSL 
I  .  00  +  0.  06+  1  .  00 
INC.    WITH  TEXT 


3.0 


0. 18+1.00 


3.00+0. 18+ I . 00 
INC.  WITH  PTSL 
I  .00+0.06+  1.00 
INC.    WITH  TEXT 


5. 00+0. 30+ 1 . 00 
6.00+0.36+  1 .  00 


6502  RFPR 


PAPER  TAPE  OBJECT  CODE 
REQUIRES  ROBERT 
UlTERWYK'S  SWTPC 
MICROBASIC  OPERATING 
SYSTEM- INTERFACE  AGE, 
NOV.     1976,    VOL.  1 , #  12. 
PTBL+    INCLUDES   SAMPLE  RUN, 
INSTRUCTIONS,    LIST  OF 
VARIABLES  AND   LIST  OF 
ROUTINES. 

REVISED   FLOATING  POINT 
ROUTINES  FOR  6502*  BY 
ROY    RANKIN    &  STEVE 
WOZNIAK    -    INTERFACE  AGE, 
NOV.    1976,    VOL .  1  ,  0 1 2  . 
NOTE   *    -   ORIGINAL  MATH 
PACKAGE    FIRST   APPEARED  IN 
DR.   DOBB'S   JOURNAL,  AUG- 
1976,    VOL. 1 ,#7. 
un.   uvaa  -  o  juukcvhl,  hul>- 
1976,    VOL. 1 , #7. 


6800     HISPDMUP   HIGH   SPEED   DOUBLE  PRECISON 
MULTIPLICATION  SUBROUTINE- 
HI  SPDMUP    BY   PERMISSION  AND 
COURTESY    OF  MOTOROLA'S 
M68fr)0   USER   GROUP  LIBRARY- 
INTERFACE  AGE,   NOV.  1976, 
VOL.  1  ,  #12. 


-TEXT 
-  HCBL 


I  .00  +  0.06+  1 .  00 
INC.    WITH  TEXT 


6800  DIV16 


REENTRANT    16  BIT  DIVIDE 
SUBROUTINE   -   DIV16  BY 
PERMISSION    AND  COURTESY 
OF  MOTOROLA'S  M6800  USER 
GROUP  LIBRARY-  INTERFACE 
AGE,    NOV.     1976,    VOL.  I, #12. 

6800      RENTMUP      REENTRANT   DOUBLE  PRECISION 
MULTIPLICATION  SUBROUTINE- 
RENTMUP   BY   PERMISSION  AND 
COURTESY   OF  MOTOROLA'S 
M6800   USER  GROUP  LIBRARY- 
INTERFACE   AGE,    NOV.  1976, 
VOL-  1  ,  0  12. 


8080  HOMEC 


8080  WSPG 


COMPUTER  OR   CONTROLLER  BY 
TFRRY    RENSON,    INTEL  - 
INTERFACE  AGE,    SEPT.  1976, 
VOL  -  1  »  #10- 


STARTREK   BY   LYNN  COCHRAN- 
I  NTERFACE,    JUNE  1976, 
VOL-  1  ,  #7. 


WORD   SEARCH  PUZZLE 
GENERATOR  BY    RICHARD  S. 
EDELMAN  -    INTERFACE,  JULY 
1976,    VOL.  1  ,  #R. 


8080  PGBIORHY  BIO  RHYTHM  BY  PAl'L  GREEN  - 
INTERFACE  AGE,  AUG-  1976, 
VOL-  1  ,#9. 


'WDBIORHY  B 1 0 RHYTHMS  IN  PRACTICE  BY 
WILLIAM  L-  DONHAN,  M-D-  - 
INTERFACE  AGE,  AUG-  1976. 
VOL.  I,  #9. 


8080  BLUFF 


BLACKJACK   BY   RICHARD  S. 
EDELMAN    -    INTERFACE  AGE, 
AUG.    1976,    VOL.1, #9. 


BLUFF   BY   PHIL   FELDMAN  * 
TOM    RUGE    -    INTERFACE  AGE, 
SEPT.    1976,    VOL.1, #10- 


6800  RABSIMB 


RELATIVE  ADDRESS  BACK- 
STEPPER    IN  MICRO-BASIC 
BY   J.    HUFFMAN    -  INTERFACE 
AGE,    DEC.    1976,    VOL  •  1  ,  #  1  3  . 

6800     TEFT6800   TEXT   EDITOR   FOR  THE  SWTPC- 
6800   BY  MARK    BORGERSON  - 
INTERFACE   AGE,    DEC.  1976, 
VOL.  I, #13-    HCAL    IS  COPY  OF 
FULL   SIZE  ASSEMBLY  LISTING- 


I  4-PTOD 
14-PTAL 
14-PTSL 
14-TEXT 
1 4-HCAL 
1  4-PACK 


1  5-TEXT 
1 5-HCAL 
1 5-PACK 


I 6-TEXT 
1 6-HCAL 
I 6-PACK 


17-PTAL    <  0 


8080  WPATBX 


R080  LLLBI 


WANG'S  PALO    ALTO   TINY  BASIC 
BY   ROGER  RAUSKOLB  - 
INTERFACE  AGE,    DEC  1976. 
VOL.1, #13.    HCAL    &   HCSL  ARE 
COPIES  OF   FULL   SIZE  CODE 


LLL   8080   BASIC  INTERPRETER 
GRAMMAR  BY   JERRY   BARBER  !■ 
ROYCE  ECKARD   -    SUBMITTED  BY 
E.  R.    FISHER   -    INTERFACE  AGE, 
DEC.    1976. VOL. 1,#13(PART  1). 
PART    2  PUBLISHED   JAN.  1977, 
VOL.2, #1.    TEXT  1    IS  PART  1, 
TEXT2    IS  PART   2  AND  HCAL2 
IS    FULL   SIZE   XEROX   COPY  OF 
BASIC   ASSEMBLY  LISTING 
WITHOUT    FLOATING  POINT. 

NIBL-NATIONAL 'S   TINY  BASIC 
GRAMMAR   FOR  SC/MP  BY  PHIL 
ROYBAL   -    INTERFACE  AGE,  DEC. 
1976,    VOL. I, #13.  ASSEMBLY 
LISTING   PUBLISHED   JAN.  1977, 
VOL. 2, #1  - 


SC/MP   MUBAGELS  BAGELS   BY   DR.  MARVIN 

WINZINREAD   BY  PERMISSION 
S.   COURTESY    OF  NATIONAL 
SEMICONDUCTOR  -  INTERFACE 


17-TEXT 
1 7-HCAL 
I 7-PACK 


1R-PTAL  <  ( 

18-PTSL  < 

18-TEXT  < 

18-HCAL  < 

1 8-  PACK  t 

19-  PTBL    <  I 
19-TEXT  < 
19-HCBL  < 

19-  PACK  i 

20-  PTBL   <  I 
20-TEXT  < 
20-HCBL  < 

20-  PACK  t 

21-  PTBL   <  ( 
21-TEXT  < 
21 -HCBL  < 

21 -  PACK  t 

22-  PTBL    <  l 
22-TEXT  * 
22-HCBL  < 

22-  PACK  » 

23-  PTBL   <  l 
23-TEXT  < 
23-HCBL  < 

23-  PACK  * 

24-  PTBL   <  i 
24-TEXT  < 
24-HCBL  •= 

24-  PACK  t 

25-  PTBL  < 
25-HCBL  < 
25-TEXT  < 

25-  PACK  » 

26-  PTAL  < 
26-PTOD  < 
26-HCAL  < 
26-TEXT  < 

26-  PACK  t 

27-  PTSL  < 
27-PTOD  < 
27-HCAL  < 
27-TEXT  < 
27-HCSL  < 

27-  PACK  t 

28-  TEXTl< 
28-HCAL2< 
28-TEXT2< 
28-HCAL3< 
28-TEXT3< 


SC/MP  NIBL 


29-TEXT  < 

29-HCAL  * 

29-PTSL  * 

29-PTOD  < 

29-PTGR  < 

29-  PACK  r 

30-  PTBL  < 


3.00  + 


.  18+1.0 


9.00+0.54+ 1 . 50 
9.00+0. 54+ 1 . 50 
2.00+0. 12+1.00 
INC.    WITH  TEXT 


I  . 00  +  0. 06+ 1 . 00 
INC.    WITH  TEXT 


I . 00+0.06+ I .00 
INC.    WITH  TEXT 


4.00+0.24+1.00 


I  .00+0.06+  I  .  00 
INC.    'VI  TH  TEXT 


3-00  +  0.  1R+ 1 .00 
3. 00+0. 18+1.00 
1 . 00  +  0.06+ 1 .00 
INC.    WITH  TEXT 


5.  00  +  0.  30+  1.00 
1 . 00+0.06+ I . 00 
INC.    WITH  TEXT 


4.00+0. 24+ 1 . 00 
1  .  00  +  0.  06+1.00 
INC.    WITH  TEXT 


4. 00+0. 24+ I . 00 
1  . 00  +  0.  12+  1  . 00 
INC.    WITH  TEXT 


4.00+0.24+1 .00 
1 . 00+0. 06+ 1 .00 
INC.    WITH  TEXT 


5.00+0. 30+ 1 . 00 
1  .  00  +  0.  06+  1  .00 
INC.    WITH  TEXT 


5.00+0. 30+ I . 00 
1.00  +  0.06+1.00 
INC.    WITH  TEXT 


3-0(1  +  0.  18+1.00 
1  -  00  +  0. 06+ 1 .00 
INC.    WITH  HCBL 


10.00+0.36+2.00 
5.00+0. 30+ 1.25 
3.00+0. 18+ 1 . 50 
2.00+0. 12+1.25 


10.00+0. 60+2.00 
5.00+0. 30+ I  -  50 
4. 00+0. 24+ I . 50 
INC.  WITH  HCAL 
4.00+0.24+ 1  .  50 


2.00  +  0.  12+1.25 
5.00+0. 30+2.00 
2.00  +  0.  12+1.25 
5.00+0. 30+2. 00 
2.00+0. 12+1 .25 


2.00+0. 12+1.25 
10.00+3. 00+2.00 
10.00+3.00+2.00 
5-00+  I  .  50  +  1  .00 
2.00+0.12+ 1.00 


£tftf*?ft*  I ?*  I » tiff 


BRANCH  TO  PAGE  120 


FEBRUARY  1977 


INTERFACE  AGE  101 


OtGi-KtY  CORPORATION 

Quality  Electronic  Components 
Double-Digit  Discounts 
Save  You  Even  More 


2102-1       8080A  LM3909 

$1.99    $24.95  69c 


NATIONAL  SEMICONDUCTOR  CLOCK  MODULES 


"Assembled  mnd  tested.  The  IC 
&  other  parLs  arc  on  the  buck  of 
these  compact  modules." 


MAI 01  OA  12  Hour  (AM-PM)  Version  .  . .  $13.00 
MA1010C  24  Hour  Version  $13.00 


MA1002A  12  Hour  (AM-PM)  Version  $10.50 

MA1002C  24  Hour  Version  $10.50 

,  >5..  LED  Dig"*, 


y  High  i{DO|gJ^ 


niformor  and  6  switches,, 
d  with  module  add  $3*45. 


Special  transformer  and  6  switches 
hen  ordered  with  module  add  $3.45 


Hobby-Wrap-30  $5.95 

Stfioij  Wropt  tad  UiMrepi  30  j*.  mitt  an  tteitdard  wl™  wrap  prig  pim 


UNWRAP 


MA  1002  &  MA  7070  Series 
Electronic  Clock  Modules 


The  MA1002  &  MA1010  Series  Electronic  Clock  Modules 
are  assembled  and  pretested  modules  which  combine  a 
monolithic  M0S-ISI  integrated  clock  circuit,  4-digit  LED 
display,  power  supply  ond  other  associated  discrete  com- 
ponents on  a  single  printed  circuit  boord  to  form  o  complete 
electronic  clock  movement.  The  user  need  add  only  a  trans- 
former and  switches  to  construct  o  digital  clock  for  applica- 
tion in  clock-radios,  olorm  or  instrument  panel  clocks.  Time- 
keeping may  be  from  50  or  60  Hz  inputs  and  1 2  or  24  hour 
display  formots  moy  be  chosen.  Direct  LED  drive  eliminates 
RF  interference.  Time  setting  is  made  easy  through  use  of 
"Fast"  ond  "Slow"  scanning  controls. 


The  MA1002A  ond  MA1010A  hove  a  12  hour  display  with  an 
AM  and  PM  indicator.  The  MA1002C  ond  MA1010C  hove  o 
24  hour  display. 

Feotures  include  olonn  "on"  ond  "PM"  indicators,  "sleep" 
and  "snooze"  timers  ond  variable  brightness  control  capa- 
bility. The  modules  are  extremely  compact,  the  MA1002 
measuring  1.375"  by  3.05",  the  MA1010  measuring  1.75" 
by  3.75".  This  small  size  is  ochieved  by  bonding  the  l.C. 
to  the  back  of  the  circuit  boord. 

IE  \i  highly  rtfommendttl  nut  lire  tfonsJiininF  bfr  obtained 
with  the  clock  Fiodulfl  01  il  ii  a  special  dual  sflconAnf 
lype  not  BtharwKe  readily  avofabl*. 


Double  Digit  Discounts  Save  You  Evert  More! 


ACE201-K 

$24.95 

1,033  SOL  DE  fit  ESS  PLUG 
CAPACITY:  BP  TO  12 

TWO  5-wOir  b'Mmo  p*jn 
%\tt:  4-fl/lo-  b¥  f* 


ENTIRE  ROCKWELL  CALCULATOR  LINE 
ON  DISCOUNT  IN  OUR  IATCST  CATALOG 


INTEGRATED  CIRCUITS  -  TTLr  CMOS,  LINEAR  4  HOS 


7400  .21 

7476 

.32 

74181 

2.15 

4012  .23 

4520 

1.14 

7401  .21 

7480 

.70 

74182 

.79 

4013  .40 

4527 

■  5-5 

7402  .21 

7482 

.70 

74184 

2.19 

4014  .96 

4528 

BS 

7403  .21 

7483 

.70 

74185 

2.19 

4015  .96 

4585 

■  :n 

7404  .21 

7485 

.89 

74188 

3,50 

4016  .40 

2102-1 

■i  « 

7405  .21 

7486 

.28 

74189 

3.50 

4017  T.05 

B0B0A 

7406  .25 

7489 

2.19 

74190 

1.23 

4018  1.05 

CA3046 

75 

7407  .25 

7490 

.44 

74191 

1.23 

4019  .23 

LM2111N 

1.25 

7408  .21 

7491 

.70 

74192 

.88 

4020  1.14 

LM309K 

7409  .21 

7492 

.44 

74193 

.88 

4021  1.14 

LM324A 

, 

7410  .21 

7493 

.44 

74194 

.88 

4022  .96 

LM340T-5 

i 

7411  .21 

7494 

.70 

74195 

.68 

4023  .23 

LM340T-6 

i 

7412  .21 

7495 

.70 

74196 

.88 

4024  .84 

LM340T-8 

I.2S 

7413  .25 

7496 

.70 

74197 

.88 

4025  .23 

LM340T-12 

7414  .89 

74100 

1.28 

74198 

1.49 

4026  1.68 

LM340T-15 

7416  .25 

74107 

.30 

74199 

1.49 

4027  .40 

IM340T-18 

\.n 

7417  .25 

74109 

.33 

74251 

1.09 

4028  .89 

LM340T-24 

i.7i 

7420  .21 

74121 

.35 

74279 

.55 

4029  1.14 

IM39O0N 

a 

7421  .25 

74122 

.44 

74365 

.67 

4030  .23 

LM3909N 

.« 

7423  .35 

74123 

.61 

74366 

.67 

4033  1.51 

MC1456V 

!  >X 

7425  .35 

74125 

.40 

74367 

.67 

4034  3.50 

MC1458V 

.53 

7426  .25 

74126 

.40 

74368 

.67 

4035  1.14 

MC3302P 

''.15 

7427  .33 

74132 

.70 

8093 

.40 

4040  1.14 

NE536T 

5.24 

7428  .28 

74141 

.88 

8094 

.40 

4041  .79 

NE540L 

7  04 

7430  .21 

74145 

.70 

9095 

.67 

4042  .79 

NE555V 

.■16 

7432  .25 

74147 

1.63 

8096 

.67 

4043  .70 

NE556A 

Bfi 

7433  .30 

74148 

1.30 

8097 

.67 

4044  .70 

NE560B 

7437  .25 

74150 

1.16 

8098 

.67 

4046  1.86 

NE561B 

3?: 

7438  .25 

74151 

.70 

75150 

1.16 

4049  .40 

NE56  2  6 

! 

7440  .21 

74153 

.65 

75450 

.88 

4050  .40 

NE565A 

i  25 

7442  .53 

74154 

1.03 

75451 

.61 

4051  1.26 

NES66V 

■  5^ 

7443  .63 

74155 

.70 

75452 

.61 

4052  1.26 

NES67V 

1  36 

7445  .70 

74156 

.70 

75453 

.61 

4053  1.26 

UA709CV 

M 

7446  .70 

74157 

.70 

75454 

.61 

4060  1.58 

UA710CA 

44 

7447  .70 

74160 

.88 

75491 

.81 

4066  .79 

UA711CA 

$3 

7448  .70 

74161 

.88 

75492 

.84 

4071  .23 

UA723CA 

til 

7450  .21 

74162 

.88 

75493 

1.09 

4072  .23 

UA733CA 

71 

7451  .21 

74163 

.88 

75494 

1.19 

4073  .23 

UA741CV 

ii 

7453  .21 

74164 

.96 

82S25 

2.19 

4075  .23 

UA747CA 

;S 

7454  .21 

74165  1.15 

4000 

.23 

4081  .23 

UA748CV 

:« 

7459  .21 

74166  1.26 

4001 

.23 

4082  .23 

UA7805CU 

1.25 

7460  .21 

74170  2.64 

4002 

.23 

4502  .79 

UA7806CU 

1.2: 

7470  .30 

74173  1.42 

4006 

1.23 

4510  1.14 

UA7808CU 

1.2: 

7472  .30 

74174 

.98 

4007 

.23 

4511  1.05 

UA7812CU 

I.3S 

7473  .30 

74175 

.93 

4008 

.79 

4514  2.80 

UA7815CU 

\.v, 

7474  .30 

74176 

.79 

4009 

.44 

4515  2.80 

UA7818CU 

'..ii 

7475  .49 

74177 

.79 

4010 

.44 

4516  1.23 

UA7824CU 

1.2: 

.70 

4011 

.23 

4518  1.14 

SILICON  TRANSISTORS 

Battery  " 
wife 
wrapping 

tool 


3M'lJiTK  WITH  HIT 
ANI>  SL.E  JiVl; 


WIRE  WRAPPING  WIRE  IN  BULK 

(ltd  ftr  filsck  10  Sb,  KYr«r 

100' $2.00  500"  S5.50  1  KM' SI 5.00 


SLIDE  SWITCHES 

Single  Pole  Single  Throw 

.IS  1-20/10  10.00/C 
Dqwblfi  Pole  D«L?fe  Throw 


BATTERY  HOLDERS 

l-AA  . . .  2*e 
3-AA  ...  43c 
1-C. . . .  35c 
IC  ....  43c 
10,,.,  35c 
*D  .  ♦ . .  42c 


PERF  BOARD 

|  0.1"  Spacing  hn-lwcnn  h  a  I  n  i 

41* "*  b"  11.71 


BISHOP  GRAPHICS  Printed  Circuit  Drafting 
Aids  are  now  available  from  Dlgt-Key 


RADIAL  ELECTROLYTICS 


.47/50V. 

.08 

.65/10 

22/50V.  . 

12 

1.00/10 

IrSOV  .  . 

.08 

.65/10 

10O/6.3V.  .09 

.75/10 

2.?/50V. 

.08 

.65/10 

100/10V. 

10 

.77/10 

3.3/50V. 

.08 

.65/10 

100/16V  . 

.11 

.85/10 

47..3SV 

.08 

.65/10 

100/25V  . 

13 

1.10/10 

Aim. 

.08 

.68/10 

100/50V. 

21 

1.71/10 

IO/16V  . 

.08 

.65/10 

220/10V. 

13 

1.08/10 

IO/25V  . 

.08 

.65/10 

220/16V , 

.15 

1.16/10 

10/5OV  . 

.10 

.75/10 

220/25V . 

21 

1.71/10 

23M6V  . 

.08 

.67/10 

220/50V. 

29 

2.35/10 

ttilW  . 

.09 

.70/10 

330/10V. 

15 

1.16/10 

330/16V . 

21 

1.66/10 

330/25V . 
470/10R. 
470/16V. 
470/25V  . 
1000/10V 
1000/16V 
1000/25V 
2200/1 OV 
2200/16V 
22O0/25V 
33O0/16V 


.23  1.86/10 

.21  1.71/10 

.23  1.81/10 

.29  2.35/10 

.24  1.96/10 

.29  2.35/10 

.42  3.33/10 

.42  3.33/10 

.54  4.30/10 

.  58  4.67/10 

.89  7.14/10 


TERMINALS 

f er  above  pflrf  bwrd 


LED  LAMPS 

N&L5053  T-l  V*  M  J1S/C 
NSLSOM  M       -18  Hfrt 

LED  DISPLAYS 


AXIAL  ELECTROLYTICS 


.47/10V 
1/30V  . 
3.3/35V 
3.3/50V 
4.7/25V 
4.7/35V  . 
4.7/50V  . 
10/25V.  . 
10/50V.  . 
22/16V.  . 
22/25V.  . 
22/50V.  . 
33/16V.  . 


.  12 


,90/10 
.90/10 
.95/10 
12  1.00/10 

11  .90/10 

12  .95/10 
12  1.00/10 
12  1.00/10 
14  1.15/10 

12  1.00/10 

13  1.05/10 
17  1.32/10 
12  1.00/10 


aim . 

33750V.  . 
47/1 6V.  . 
47.' 25V.  . 
47/50V.  . 
ifflTOV 
100,'W/. 
1QW2SV. 

ioo/sov. 
sttflov . 

220/1  &Y. 
'  .  • 

mnw, 


-n  i.tsno 

.It  1.5.2/10 

.14  1.15/10 

17  1 .30/10 

31  1,17/10 

.  M  1.33/10 

.)?  1.30/10 

.20  F.55/TO 

.»  2.30/10 

.  IB  T.«/1t> 

.20  T.S5/1& 
2.35/10 

.40  VBJH 

.14  l.WIt) 


330/I6V.  .29 
JX/2SV .  .  32 
470/lOV .  .  32 
4T0/25V.  .  37 
1 000/1 0V  .  33 
1 0OO/1  flV  ,  39 

mom ,  56 

tt»/10V  .  so 
2200/1 6V  .62 
2200.25V  .  79 
3300/16V  .  95 
470O/16V1.O9 
10000/1  OV  1.15 


2.35/10 
2.54/10 
2.55/10 
3.00/10 
2.65/10 
3.15/10 
4.50/10 
3.96/10 
4.95/10 
6.36/10 
7.63/10 
8.70/10 
9.19/10 


;N::v5-  CC  .375"  . 
TNDSOO  CC  .500"  . 
FND  507  CA  .500. 

f.Norao  cc  .eoo- . 

IHDB07  CA  .BOO"  . 


SILICON  DIODES 


N4001 

.64/10 

5.50/C 

N4002 

.66/10 

5.60/C 

S5i  m 

N4003 

.68/10 

5.80/C 

N4004 

.70/10 

5.95/C 

N4005 

.82/10 

7.05/C 

N4006 

.90/10 

7.75/C 

N4O07 

.99/10 

8.60/C 

477/M 

1N4148 

.40/10 

3.50/C 

S29/M 

MPS918,  MPS930.  MPS2222A,  MPS2369A,  MPS2712.  MPS2907A.  MPS3392. 
MPS3393.  MPS3394,  MPS3395,  MPS3563.  MPS3565.  MPS3638,  MPS3638A. 
MP53640.  MPS3641,  MPS3643,  MPS3645,  MPS3646,  2N3904,  2N3906,  2N4124, 
2M4126,  2N4401,  2  N4403,  2N4410,  PN4888  ,  2N5087,  2N5089,  PN5129,  PN5133. 
PN5134,  PN5137,  PN5138,  PN5139,  2N5210,  PN5964  ....  16,  $1.55/10,  S13.6O/1O0 
of  some  port  no. 

MPF102  .36  S30.60/C  2NS457  .48  S41.00/C  MPSA13  .28  S24.00/C  2N3055  .99 
S85.00/C 


Double  Digit  Discounts 
Save  You  Even  Morel 


V2  WATT  ZENER  DIODES 


WIRE-WRAPPING  TOOL 

$5.95 

Wraps.  Unwraps  A 
Strips  30  ga.  Wire 


y*  &  y2  watt  5% 

CARBON  FILM  RESISTORS 

Se  each  In  multiples  of  S  per  value 
$1.70/100  L  $12.00/1000  of  lame  value 
1  ohm  thru  1.0  megohm 


LC  SOCKETS 


•■  - 

'.  ■ 

1 N523SV 


3.3v  15  IIT/C 
3.fiy  .15SI1/C 
3.9 v  .15$llj'C 
4.3v  15SI1/C 
4.7*  .15H1/C 
"  -5SI1/C 
5.4v  .15  S11/C 
6.Qv  .15  SllrC 
fi>,l5Sll/C 


UJ5236B7.5v.15  $11 /C 
1N52378  8.2v.l5$llj'C 
1N52388  8.7v  .15  $11^ 
1N52398  9.1v  .15  $11/C 
1N52408  lOv  .15  $11 K 
1N5241B  11  v  .15  $11/C 
1N5242B  12v  .15  $11/C 
1N5243B  13v  .15  Sll/C 
1N5244B  14v  .15  $11/C 
1N52458  15v  .15  $U/C 


DATA  BOOKS 

TTL  IC  *  Sn  p  $4.00 

irntflr  IC  i  957  p.  $5.00 
CttK  IC'f  154  p.  $3.00 
Trantittsri  2B3  p.  $3.QQ 
Memory  \Ci  5?3  p.  S3.00 
Intorfooo  IC'i  464  p,  $4.00 
Voli,  Regs.  128  p.  $3.00 
Linnnt  Appl.  1  433  p.  $4.00 
Linear  Appl.  3  344  p,  $3.00 
Audio  19&  p.  $3.00 


HARDWARE 

2-56  1/4  Screw  .99/C  7.20/M 
2-56  1/2  Screw  .99/C  7.65/M 
4-40  1/4  Screw  ,55/C  3.60/M 
4-40  1/2  Screw  .60/C  4.05/M 
6-32  1/4  Screw  .65/C  4.40/M 
6-32  1/2  Screw  ,75/C  4.85/M 
8-32  3/8  Screw  .90/C  5.85/M 
8-32  5/8  Screw  .99/C  7.00/M 
2-56  Hex  Nut  .55/C  3.60/M 
4-40  Hex  Nut  .55/C  3.75/M 
6-32  Hex  Nut  ,60/C  4.00/M 
8-32  Hex  Nut  .60/C  4.15/M 
No.  2  Lcckwosher  .85/C  5.75/M 
No.  4  Lockwosher  .45/C  3.00/M 
No.  6  Lockwosher  .45/C  3.00/M 
No.  8  Lockwosher  .45/C  3.00/M 


8  Pin  Solder  .17  1.60/10 

14  Pin  Solder  .20  l.W/10 
16  Pin  Solder  .22 
18  Pin  Solder  .29 
24  Pin  Solder  .38 
28  Pin  Solder  .45 


2.1  a.- 10 
2.75;  10 
3,60/10 
4  25  10 


40  Pin  Solder  .63     4.00/1 0 


2,30/10 
2.50/1 0 
2-B5/10 


8  Pin  W-W 

14PinW-W  ,26 

16  Pin  W-W  .30 

18  Pin  W-W  .60  5.70/1 0 

24  Pin  W-W  ,96  9.10/10 

28  Pin  W-W  1.12  IO.O0/10 

40 Pin  W-W  .92  fUSlK 


DOUBLE-DIGIT  DISCQIMT  SCHEDULi 

MwxfcgndlM       Dbcavnt    MmfctntU*  Dtewirt 

S  O.00  J24.99     NET  SlOO.0C5499.99  L«i  15% 

SS0O.OO  Sm99  L.si30% 
S25.99-S99.99     Less  10%  S 1000 .00  &  Up    Um  25% 
Than  AM  th«  Standard  Chorg*  Balow 
STANDARD  SHIPPING/HANDLING  CHARGE 

If  four  in«rchandiM  tofnl  sftir  di«o«nt  It  Utwtin 

S  0.00-S  4.99  .  .  odd  J2.00  S  50.00  S99.99  .  odd  S0.25 
S  S.00,S24.99  . .  odd  S0.75  $100.00  i  up  .  .  NoChoree 
S25.00  $49,99  ..  add  $0.50 

iKlwbl  dipping  qnrf  in*wr«K*  to  U$A  ft  Cmti* 

cod  aitoEits  Acarrio  fh  same  oat 


wm  »^       "Only  Quality  Components  Sold!*' 

DON'T  FORQtT  TO  APPtr  O/SCOUNT  SCNfOUU 


DIGI-KEY  CORPORATION 


Box  677,  Thief  River  Falls,  MN  56701 


211-U146H 


102  INTERFACE  AGE 


CIRCLE  INQUIRY  NO.  58 


FEBRUARY  1977 


BASIC  Algorithms  for 
Common  Math  Functions 

By  Michael  P.  Burton  (BAFCMF) 

Some  smaller  versions  of  BASIC  utilize  standard 
floating  point  arithmetic  but  do  not  contain  the  com- 
monly used  math  functions  sine,  cosine,  ex,  log  e  and 
square  root.  All  of  these  functions  except  square  root 
can  be  expressed  as  series,  which  are  easily  converted 
to  algorithms  written  in  BASIC.  For  the  square  root 
function,  there  is  an  approximation  method  which  can 
also  be  written  as  a  BASIC  algorithm.  The  following 
routines  are  the  algorithms  for  sin(x),  cos(x),  exp(x), 
ln(x)  and  sqrt(x).  Please  note  the  constraints  placed  on 
the  values  of  x.  Within  the  given  boundaries  of  x.  the 
routines  are  accurate  to  seven  digits. 

The  following  BASIC  program  was  developed  for 
SWTP's  6800  Microcomputer  and  runs  on  the  SWTP's 
standard  4K  BASIC  Interpreter  version  2.0  with  float- 
ing point. 

INTERFACE  EQUIPMENT;  SWTPC  CT1024  with 
SWTPC's  AC-30  Cassette  Interface. 

SEE  MICROCOMPUTER  SOFTWARE 
DEPOSITARY  PROGRAM  INDEX  FOR  COPIES  OF 
THIS  PROGRAM 

BASIC   ALGORITHMS   FOR   COMMON   MATH  FUNCTIONS 
SYMBOLIC   NAME:  BAFCMF 
PROGRAMMER:    MICHAEL    P.  BURTON 
MICROCOMPUTER:    SWTPC  6K00 

INTERFACE   EQUIPMENT:    SWTPC   CT1024   WITH  AC-3M 

CASSETTE  INTERFACE 
SUPPORT   SOFTWARE:    SWTPC   AK  BASIC 


1000 

1005 

1010 

1015 

1020 

1025 

1030 

1035 

1040 

1045 

1050 

1055 

10  60 

1065 

1070 

1075 

10  80 

1085 

1090 

1  100 

1  105 

1110 

111S 

1  120 

1125 

1  130 

1  135 

1  140 

1  145 

1  1  50 

1  1  55 

1  1  60 

1  1  65 

1  1  70 

1  175 

1  180 

1  1  85 

1  190 

1200 


REM   SIN  ALGORITHM 

REM   X=INPUT   ANGLE   EXPRESSED    IN  DEGREES 

REM   X1=RESULT  CX1=SINCX)) 

REM   -180. 0<=X<=1 80.0 

LET  N 1 = 1 

LET  N2=-l 

LET  X1=0.0 

LET  X2=1.0 

LET   X3=X* (3. 1 4 1 59265/ 1 80 .0 ) 

IF   X>=(-180.0)    THEN    IF   X<=180.0   THEN  1055 
PRINT   "SIN   BOUND  ERR" 
FOR  N=l    TO  15 
LET  N 1 =N 1 *N 
LET  X2=X2*X3 

IF  N= ( INT (N/2 ) *2 )    THEN  1085 

LET  N2=INT(N2*(-  1  )  ) 

LET   X1  =  X1  +  (X2*INT(N2))/(INT(N1  )) 

NEXT  N 

RETURN 

REM   COSINE  ALGORITHM 

REM   X=INPUT  ANGLE   EXPRESSED    IN  DEGREES 

REM   X1=RESULT  (X1=C0S(X)) 

REM   -  1 80. 0<  =  X<= 1 80.0 

LET  N 1 = 1 

LET  N2=l 

LET   X  1  =  1  . 0 

LET   X3=X*(3. 14159265/180.0) 
LET  X2=X3 

IF   X>=(-180.0)    THEN    IF   X<=180.0   THEN  1155 
PRINT   "COS   BOUND  ERR" 
FOR   N=2    TO  16 
LET  N1=N1*N 
LET  X2=X2*X3 

IF  N<> (INT(N/2)*2)   THEN  1185 
LET  N2=INT(N2* ( -  1  ) ) 

LET   X 1 =X 1  +  (X2* INT (N2  )  )/ ( INT (N  1  )  ) 

NEXT  N 

RETURN 

REM   EXPONENTIAL  ALGORITHM 


1205  REM   X=EXPONENT  OF  E 

1210   REM   X1=RESULT  (X1=EXP(X)) 

1215  REM  -5.0<=X<=22.0 

1220  LET   N 1 = 1 

1225  LET   X  1  =  1 .0 

1230  LET   X2= 1 .0 

1235    IF   X>=(-5.0)    THEN    IF   X<=22.0   THEN  1245 

1240  PRINT   "EXP   BOUND  ERR" 

1245   FOR  N=l    TO  51 

1250  LET  N1=N1*N 

1255  LET  X2=X2*X 

1260   LET   X1=X1+X2/(INT(N1 )) 

1265  NEXT  N 

1270  RETURN 

1300   REM  LOGARITHM  ROUTINE 
1305  REM  X1=LN(X) 
1310   REM   0. 1 <=X<= 10.0 
1315  LET  X1=0.0 
1320  LET   X2= 1 .0 

1325    IF   X>=0.1    THEN    IF   X<=10.0   THEN  1335 
1330  PRINT  "LN   BOUND  ERR" 
1335   FOR  N=l    TO  51 

1340  LET  X2=X2*((X-1.0)/(X+1.0)) 

1345    IF  N = ( INT (N/2 ) *2 )    THEN  1355 

1350  LET  X1=X1+X2/INT(N) 

1355  NEXT  N 

1360  LET  X1=2.0*X1 

1365  RETURN 

1400   REM   SQUARE   ROOT  ALGORITHM 

1405  REM   X=INPUT  VALUE 

1410   REM   X1=RESULT  (X1=SQRT(X)) 

1415  REM  X>0.0 

1420    IF   X>0.0   THEN  1435 

1425  PRINT  "SQRT   BOUND  ERROR" 

1430  RETURN 

1435  LET  Xl=X/2.0 

1437  LET  X3=0 

1440   LET   X2=(X/X1-X1 )/2 

1445    IF   X2=0.0   THEN  RETURN 

1450    IF   X2=X3   THEN  RETURN 

1455  LET  X1=X1+X2 

1457   LET  X3=X2 

1460    GOTO  1440 

9999  END 


4K  Low  Power  Static  RAM  Board 
Kit  $79.95 

FULL  HIGH  IMPEDENCE  BUFFERING  •  4.5"  x  6"  WITH  STD  44 
PIN  GOLD-PLATED  EDGE  CONNECTOR  •  MILITARY  QUALITY 
PC  BOARD  WITH  PLATED  THROUGH  HOLES  •  450  NS.  LOW 
POWER  2102  RAMS  •  ON-BOARD  ADDRESS  DECODING 
INCLUDES  FULL  DOCUMENTATION 

6800  OEM  Prototype  Sets 

42.50 


PROTOTYPE  BOARD  (With  Sockets) 
See  September  issue,  p.  72  for  details. 

LOW  COST  6800  STARTER  SET 

Includes  board,  sockets,  6800  CPU,  6810  RAM, 
6820  PIA,  address  decoder,  documentation  for 
minimum  system. 

NEW  1K  RAMS  at  Surplus  Prices 
Check  Date  Codes  and  Compare 


84.95 
2102-1  1.45 


RAM 
PROMS 
E  PROMS 


Organization 

IKjcI 

256x1 

512x8 

256x4 

256x8 


Access  Time 
450  ns2102 
45  ns  low  pwr 
100  ns 
80  ns 
1  ms 


Price 

1.45 
3.90 

16.00 
3.00 

10.00 

25.00 
1.75 


7  segment  LED  displays  .3"  high.  Very  bright  1  tube  (25) 
Octal  and  decimal  decoder  with  4  bit  latch 
and  constant  current  drivers  for  above  displays 

DISCOUNTS  AVAILABLE  AT  OEM  QUANTITIES 

KATHRYN  ATWOOD  •  Calif.  Residents  add  6  sales  tax 
ENTERPRISES  •  For  total  orders  less  than  $25.00 

P  O   BOX  5203  add  *1,25  8n|PPin0  and  handling 

ORANGE  CA  92667       Est'mat«d  shipping  time  7  days  ARO 


CIRCLE  INQUIRY  NO.  54 


FEBRUARY  1977 


INTERFACE  AGE  103 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


BASIC  FLOATING  POINT  MATH  PACKAGE 

Part  3  of  LLL  8080  Basic  Interpreter  Program 

By  David  Mead 

and  modified  by  Hal  Brand  and  Frank  Olkan 


INTRODUCTION 

This  article  is  Part  3  of  a  series  of  four  articles  cover- 
ing the  LLL  8080  BASIC  Interpreter  program  released 
to  the  public  domain  by  Lawrence  Livermore  Labora- 
tories. It  includes  the  BASIC  Floating  Point  Math 
Package  assembly  listing. 


[Win  fJff"  Ai*,t<"ni  PI 


Of  rn 
3F  f  a 
ooco 

003F 


0'>03 
0906 
0'i09 
39  )C 
090F 
0*512 
39  I  5 

09  18 
0<»l  9 
0914 

)9  in 

091F 
0921 

J9?7 

09?a 

09  2  R 
)<)  2  C 
092F 
0930 
30  31 
093? 
0935 
09  36 
09  3  7 
39  38 

0<>3ft 
J93E 
094  1 
09  4  2 
09'. 3 
0')  4  4 
39  4  7 
0948 
0949 
3<3'tC 

0<">0 
395  3 
09  51 


CI  69  oc 

CD  OA  OA 

C2  12  09 

f.  f  E2  OA 

CA  AB  )H 

C3  Ar  OR 

Ci)  E  2  OA 

CA  5B  )C 


CA   5H  OC 

Cf»  01 

C  3  4  4  or 


• .  1     FORhfiS  x  n  page  : 

CtiyPANlllN   FILE    rOrt  UA$«:) 

CONTAINS  rLIIAMrjG  t'QlNT  "OUT  I  NFS  AND  S^lMF 
UT  II  I1Y  ki'JUrl  NFS. 

////FICATlNG  IMIIM    PACKET   rr:R  THE  MCSrt 
////UY    I3AVIH  MEAI) 

/  /  /  /Ml)  C  1  F  ICC  MY  HAL    SCAN'}  9/6/74 

////mooif  I  rn  fop  2-.  "IT  .mant  issas*****c*««» 
////ihuS  Ai:nro  i/a  comvehsicn  fnunNfS 

////NF*  POUT  INF  CPMf-FMS 
/  /  /  /  A  R  F  I'RECl  LD-H)  RY  / 
////niHFW    CHVMGFS    Ai;  F   NOT  13  BY 

////Mr.oiriEn  hy  fpank  r:iKf\  o/crs/75 


FOU 
FUU 

ron 
rou 


VJ-I 


s  n  tm 


////    DlVlOF  SUfMtPUTlME 


call  rsicv 

CAtl  ZCHK 

jnz  ttst? 

CALL  P.Chk 

.j;  i  Milt; 

Jmp  VsZi-ec 

CALI  ftCMK 

LIFLwr 

HOV  F  ,  L 

MfJV  L,C 
CALL  DCLP 
MO v  L  ,  f 

Call  emu 
'*ov  i  ,c 

CALI  DLSr 
MV  I   n , 2  3 

mhv  l  ■  F 

CALI  ENT2 
OCP  D 

jz  oncn 

MOV  A  ,  L 

MOV  L  ,  C 

'*<}\l  C  ,  A 
CALL  Dl.ST 

MOV  A i L 

MOV  E  ,  C 

nnv  C  ,  A 

JMI>  RFP3 

CALL  ACPS 
J  M  CHIN 
MOV   A i L 
MOV   L , C 
MOV   C . A 
CALL  DLST 
MOV  C, L 
MOV  L  i  E 

Call  ldcc 

RE  T 


;  C  3 ^r>tj  T  F    S  i  Cf.  OF  PF  SUL  I 
;  CHECK    IF  C  IVIDFNO  =    Z«  R<j 
I  IF   .3  I  V  I  l)E  ND  .Mt  .   0  CHL(.k  01 
iCtlTCK   TOP  ZtRL/ZFRO 

;ZEvn/zc«r  -  indefinite 

;  ZEP'l/M  )N<  E  PO  =    ZEP  ) 
;  r  3MF   H  F  P  t    If    0  IV  IHENO  .UT  . 
;  N  3rj£FK  O/zr  PC.  ;  OvtKf  LCw 
;  IF    WF   CIET    h-FOf  .    THINGS  I  Gjk 
;SavC  hasf    in  [ 
;R4SF?£,   TCI  I 

;CLEAP  OlIHHiNT  ffi"!T(SSA  SUIT 
;FFSTnt,r    a  ASF    IN  L 

;r.n  first  r.v(  lt 
ipas*:  ?<i  in  l 

;mOvf    0UO11LNT  0VF3   L Nf  PLACE 

<:\uMtirp  ijr  it fpat  ions  to  n 


;POVE  011:1  T  I  It  T 
;CPTP    TO  A 

;  lp  v>  ic  r 
;CPTR  Tn  r 


ICHFCk    IF   PFSULT    IS  Nfltf 


CALL 
SUM 
CP! 
JZ 

a  n  i 

CALI 

«r  t 


f  FCHF 


;ipt"  n  a 

;Cf  T<J    TO  L 

;lptp.  Tn  r. 

;SmIFT  ouotifnt  left 


;CJMPUT[    THE  ChAQACTEP 1ST IC 


;f,|-  T  A=ChAP  I  h  ,  I.  )  i  F  =  f  HA 
;NFW  CHAP  *  CHARlCIVIOcND  - 
ifHCFK  MAX  DQS1TIVF  NUMHfcS 
;  JUMP  ;iN  GVEPFLOw 
;AD(3  1  SINCE  *E  LMO  NOT  LEFT 
iCHFCK  ANO  STOCE  CHAwACTCRIS 
; R  FT URN 


////   AOOI  T  10>J   SU'IPHUT  1\E 


(J9BJ 
IM'i'. 

■ynu 
■■  i 

h<: 

S« 

D'J'i  'J 

ullil 
iWl 

l!  ■«  ?•  J; 
:■ 

)<)M 

il'lAf 
.:'■!■  i 

hli 

nrh<ip  7 
I  JiT-l 

O'tH./ 
Olf  / 

Ml  I 
J  iK  "J 

,  *i  i 

D  rJ  1 1 . 

u'td 

J'*0  1- 
MDj 


0'3I36 

0<)0<) 
09OC 

J9i)  r- 

09F2 
09ES 
D9E6 
09EI1 
39EF 


09EF 
39FJ 
09F1 
09F2 
09  F  4 
09F5 
39F6 
09F7 
09FB 
)9F9 
09  F  A 
09FC 
09F0 
09FE 
)9FF 
OAOO 
0A01 


CP  F8  OA 
15 

C2  8C  09 


C2  f)C  09 

69 

2C 

6E 

cn  j 7  )a 

CD  EF  OR 

FE  02 

C2  A  A  39 

C3  80  Oti 

It-,  01 
A? 

CA  136  09 

CL)  C7  08 

C  A  B9  09 


C)  26  Ort 
CO  FF  09 
C)  F  7  3fl 


CO  51)  OB 

132  OF  09 

CO  8D  OC 

rO  FF  3<J 

CD  06  Qii 

02  02  OT 

CD  F8  OA 

C  )  U6  OB 
r.9 


SU'*  0 
ANI  12 
MOV  0, 
MVI  A, 
CMI»  0 
JNC  SH 
MVI  0, 
OR/i  A 
CAl  I  C 

ncu  r» 
jnz  s» 

MOV  A, 

Cmp  n 

JNZ  EC, 
MOV  L  , 
INR  1 
MDV  " 
CALL 
CAl  L 
CP1 
J^Z 
JMP 


MVI  0. I 

ANA  D 

JZ  AF3DZ 
CALL  TSTP 

JZ  SUOZ 

MOV  A, L 

MOV  L , 3 

MDV  B i A 

CAl  I  OSUB 
CAl I  MANT 
CALL  TSTR 


L,  M 

LASO 
ACPR 


JZ 


h  ORH 


MCV  A i L 

Mnv  i , n 
^nv  h  .  A 

MOV  A ,  C. 
MCIV  CO 
MiJV  F  .  L 
MOV  9 , A 
CALL  I XFB 
MflV   A  ,  '} 

nnv  is ,  c 

MOV  C.A 
MHV  L , E 
JMP  NORM 


SSUfiTR^CI  LP14  CHAR  FRO^I  BPT« 
;01 n  FRTNCE    TO  D 


;F  .GT  .S   IF  L  .  N  E  .! 


TO  L 
;C    PTP?1    T!D  L 
iPFSTOPr  l 
:(.H?C.K.    HHAT  10 
;SAVF  ANSHFR 
;  T  r  ST   FOR    ZERO  AnSwFP 

;WRITE   FLOATING  ZfRO  ANO  R f T 

'.WILL    T  T  S  T  F(iR  SUP 


;0F   L    AN!)  !i 

;SiJKTRACT  SMALLER    f  PU^'   HI  GGF 
:SH    U^   SIGN  CF  RESULT 
.SEE    IF    *r   MTEC   TP  INTLRCHAN 
;  i^pTR   ANO  L  P T d 

;  Nri   I  N  T  F  o.C  h  ANGf    NFCESSAKY  ,  S 
;  ANO    RE  TURN 
;  I  N  t  F  R  t ",  m  \  N  C  E 


;CPTK     TO  ^ 
;BPTR   n  C 
;LPTP   TO  E 
;CPTH   Tfi  B 
;MOV^  ?tiPTF  > 


jNOkMAtlZE   RESULT    ANO  RETURN 


TMF   I  ARGtR   C  URACTFR  1ST  IC    TO    ThE  RFSULT 


CALL 

JNC 

CALL 

CALL 
CALI 
JNC 
C  ALL 
CALL 
RC  T 


CCMP 
AD132 
HCU 

MAPyT 
DA  1)1) 
SCCF^, 
0RS1 
I  NOP 


MOV  L , E 

INR  L 

INR  L 

1NP  L 

MOV  c,a 

MOV  A  ,  M 

AN  I  127 

ADO  E 

MOV  M , A 

OCR  L 

OCR  L 

DC  R  L 
RFT 


;C  JM?ARE  THE  CHAK ACThR I  ST  ICS 
;  IF    CHAPlH.t)    ,GL:.  CHARtH.B) 
;  IF    CHAP  I  H  ,  L  )    .IT.  CHAR(HfB) 
iCHAR  (  H  » B  )    TO  CHARIH.L) 
;CU^PUTE   SIGN  OF  RESULT 
;  400  MANTI  SSAS 

;  IF   THERE    IS  NO  UVFLw  - 
;1F    OVE  PFL  {)<n    SHIFT  RIGHT 
;ANI3    1VCRCKENT    CHAR  ACTER  I  S  T  1 
;  ALL    OONT  ,    St;  K  E  T  JRN 


JSAVF  L  °TP 

;C    PTX   TO  L 

;LF!AD  INDEX  wORO 

ISCA^F  SIGN 

; RE  STORE  L  PTH 

!L  "TR72 


:T0  I. 

;SAVE  S  IGN    \t,  E 

!  SCARF  CHAR 
;A:)0  SIGH 
iSTC^E  I' 
;  R  F  S  TD'l  E 


K-LJ 


09<,9 
096C 

396F 
0970 
0973 
0974 
09  76 

)977 
097B 
0979 
397A 
097B 
097C 
09  7  F 


////    SUBTRACT  ION  SURRUUTINF 


CALL  CCM^> 

J I  F002 

MflV  D  i  A 

JC  LLTB 

sua  F 

ANI  l?7 

MOV  O.A 

MOV  " 


MOV 
I  NR 
MGV 
MOV 
JMP 


L,C 


L  ,  1) 

Nr.  hk 


;/**«'*SFT    JP  TO  SUtmACI 
SUUPfJUTlME  LADS 
FLOATING  POINT    \00  CP  SUB 
A?12S    ON  FN TRY7SUB 
A?0  ON  CNT-*Y?AOD 
F-S?FiFI»ST    OPTR  TESTDOYFO 
BASE    ?l  1   USFT  FFIR  SCRATCH 

iSAVf   FNTRY  PMT   AT    BASE  ?6 

; cnrCK  aodfno/su'jtk  ahend  *  z 

;IF  SO,  °E SULT= ARC  SO  RCTUPN 
;TMIS  «ILL  PREVENT  UMDF«TLOW 
;  ZFRH    *    rjp   _   n  Rr 


;L.GT.«    1 F  HERE 

JMJFFEPF.MCr   ID  R 

; SAVE    bAS  E    IN  E 

;f.    PTP   T'5  L 

;C    PTP? 1    Tn  L 

;SAVF    RASE    IN    C  PTR71 

;R    PTR    TO  L 

II  . L  T ,n    IF   HER  t . RP  Td    TO  i 


)A  32 

CD 

79 

3C 

1  ;VSD  : 

CALL  MSFH 

0A05 

BR 

CMP  t 

OA  06 

OA 

34 

OA 

JC  A'JCH 

0AO<) 

C2 

30 

JN?  BBCH 

OAOC 

83 

ADO  E 

OAOO 

DA 

22 

OA 

JC  PM1N 

0A10 

CD 

El 

OR 

CALL  AORS 

0A13 

F2 

46 

OA 

JP  LOOO 

3A16 

CD 

F  4 

C  1M  I : 

CALL  OCMP 

0A19 

OA 

54 

OA 

JC  L131 

OA  1C 

48 

OA 

JNZ  L001 

3A1F 

3E 

32 

L  002  : 

MVI    A,  2 

0A21 

C9 

RFT 

0A22 

CD 

E  1 

0.3 

9HI  N: 

CALL  AORS 

0A25 

F2 

4E 

OA 

JP     LI  28 

0A28 

CD 

F4 

Of* 

COM2 : 

CALL  OCMP 

3A2B 

OA 

4B 

JA 

JC  L303 

0A2E 

C2 

51 

OA 

JNZ  L129 

OA  3  I 

C3 

IF 

OA 

JMP  L002 

3A34 

C  ) 

E  1 

OB 

■.  W  : 

CALL  AORS 

0A37 

FA 

4  6 

OA 

JM  LOOO 

3A3A 

C3 

16 

3A 

JMP  CCMl 

0A30 

CD 

E  1 

OR 

B3Ch: 

CALL  AORS 

0A40 

FA 

4F 

OA 

JM  L12R 

0A43 

C3 

28 

3A 

JMP  CCM2 

0A46 

AF 

LDOO: 

XRA  A 

OA  4  7 

C9 

RF  T 

0A48 

3F 

01 

LflOl: 

MV  1    A  ,  I 

OA'tA 

C9 

RET 

JA4B 

3E 

J3 

L  30  3  : 

MVI    A  .  3 

SUI3PIHIT  IN."   I  ,ASD 
UTILITY   ROUTINE    FOR    t  ACS 
CALCULATES    tpijl-  ClPrP   ANO  SGN 
RFTUIH1S   ANSk-F"  ^1 

;F  rirn  vA^.T  S  1GNS  ,    F    IN   A  ,  D 

•.CiJMPliPh  SIGHS 

;F?,1-    '^r-\NS  GO  TO   A  PfANCH 

IF-    '^7    ^F.VJS   GO    IT    B  BRANCH 

;SAMf  SIGN   IF    HEFF,    A  DO  SIGfiS 

;IF   -JOTH  MlfJUS.   WILL  OVERFLEW 

iBPTH    "t:s    IF  KfPf 

;  I F    AN    Al  1,    LTAO  0 

;CUMi>ARF    "    WITH  S 

:S.GT.F,SO  LOAD  131 

5F.GT.StS0  tC;AO  1 

;  f  P^flR  CONDITION,    Z  ERO  ANSt.tR 

JCHFCK  EOF  AOO  CK  SUR 

: ADDt  so  loa:)  12s 

;COMf'ARF    F   WITH  S 
;S.CT  .F  ,<5C  LOAD  3 
iFGT.S.SO  LiJAJ  12<> 
^  E  R  RHR 

hTT.S-    S'l   TEST  FPk  A/S 
:Sl)BTRACT,    Si)  Lf)A[>  0 
;ADO,    Sn  GO  TO  r>CMF' 
:F-, S?.  SO    TEST    FOP  A/S 
iSUfi 
;AUO 


104  INTERFACE  AGE 


FEBRUARY  1977 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


0A4O 
0A4E 
3A51 
0A51 
OA53 
0A54 
0A56 


□  r 

DAY* 
0*  V 


0A5F 
0A62 
0A65 
0A6B 
0A6B 
0A6E 
3A6F 
0A70 
OA  73 
0A74 
0A76 
0A79 
0A7C 
0A70 
3A7E 
OA  7F 
0A82 
0A83 
0  AB4 
3A85 
0A66 
0A89 
0A8C 
OASF 
DA  90 
OA  91 
0A94 
JA95 
0A93 
0A99 
0A9B 
0A96 
)AA1 
0AA3 

)AA4 
0AA5 
OAAft 
3AA7 
0  A  A  A 


OAAO 
OA  AF 
)A0  I 
0AB2 
0A93 
3A86 
OAB'l 


OABE 
3ABF 
OACl 
3AC4 
OAC? 
OACU 
)ACR 


oact 

OAOO 
'DAD  I 
OA02 
0AD3 
3AD4 
0A05 


CI  5i>  0* 
CO  FA  OR 


CI  69  OC 

CO  OA  OA 

CA   AF  OR 

O  F2  OA 


16  18 
C)  F8  OA 
OA    A  A    3  A 


CO  F8  OA 


15 

C2  76  OA 
CI   El  OR 


FF  80 
CA  62  OC 
06  01 
CI  44  OC 


fF  CO 
CA  6i  0" 
O    E9  3A 


OADA 

i)  An  a 
oa:r 

OA  DC 
3A0D 
0  ADE 
OADF 


3AE2 
0AE3 
0AF4 
3AE7 
0AF8 


0AE9 
OAEA 
9  AE^ 
OAFC 
OAEO 
3AEE 
OAEF 
OAFO 
JAF1 

0AF2 
OAF  J 
3AF4 
OAFS 
OAF  6 
JAF7 


LI28: 
L  129  : 
L  131: 


call  rem 

KNZ 

CAL  L  OCMP 
PF  T 


SURRPU-  I'lf    I  MCf-> 
CfJ^PARFS    TMF    MAGNITUDE  fir 
TwO   FLOATING    PNT  NJMlUfS 
Z?l  ?.C?I    IF  f.LT.5. 

;Pf  TURN    IF    NOT  EQUAL 

:  ir  eoual i  Chcck  mant  s 


////   MULTIPLY    SU6R0UI INF 


C  SIGN 
ZCHK 
WZfcRC 
BCHK 
WZ  ERC 


L.C 

L  ^  £T 
CFCH- 


SUiJROUT  IN  E    L  *Ul 
FLOATING   '>f)INT    MULT  I  P  L  V 
L    PTR    X    b  PTR    TO  C  PTP 

;COmPUTC  SIGN  CF  PfSULT  ANO 

;check  fipst  operand  for  zep 
; zfpo  •  any  thing  =  zfpc 

;CriFC<  SELCNO  UPcRANO  FOP  ZF 
;ANYTHING  •   ZEFtD   =  ZtoO 
;SAVE  l  ?tr 
;C    PTR    T«  L 

iclp  product  mani  lcc  s 

;l    PTQ   TO  L 

:LOA0  NUMBfR    I  T  E  P  A  T  Il'NS 
:SHIFT  L   PTP   R IGHT 
IWILL    AOD   3   PTR    If  C?l 
; 1 NTE  PCHanGE 
;L  ANO 
;C  PTRS 

;SHIFT   PPO'lULT  PVF° 

; Interchange 

;L    ANO  f.    PTPS?bACK  TO 

;  op  ig  I  n  al  > 

;  MORE   CYCLFS    ir  Z?0 

;  TTST    IF   FFSULT    IS    NORMAL  IZF 
;  If  NrWAllZED  CO  CCMPUTE  Ch 
;SAVE  LPTP    IN  E 
:  SET  L  =C  PI  rt 

EFT   Shift  .  . 
.  ..  F  S  T  0  R  F  LPTP 

; OTuE  RW I SF  SFT  A=ChAR(h,L), 
;  CHAR  (  ^  ESUL  T  J  =  CHASiH.L)  ♦ 
;fnrCK  FPF  SMALLEST  NEGATIVE 
;  IF    SO    THtr,   UNO  FH  FLO*. 

;  su?  tra  r  t  i  to  co«pfnsatf  fp 
; check  characteristic  and  st 
; fe  turn 


CALL 

JZ 

MOV  F  , 
"10V  L  .  C 
CALL  OCLR 
MOV  L , E 
IV I    Df  24 
-•H:       CALL  FIRST 
JC  MAUD 
«0V    A , L 
MOV  L.C 
MOV  C  ,  A 
TP:       CALL  ORST 
MOV  A  ,L 
MOV  L.C 
MOV  C.A 
OCR  D 
JNZ  KPGO 
CALL  ftU 
JM  L  M 

MOV 
MOV 
CALL 
MOV 
CAI  L 

Aor> 

CPI 

JZ 
SUI 
CALL 
RET 

HO:        *4UV  A  .  L  ;  I  NTFRCHANGF 

mhv  l.C  :t  ano 

MOV  C  ,  A  ;t  PIi", 

CALL    CAOD  ;  ACCUMULATE    HRf  PUCT 

JMP  INTP 

SUBROUTINE  NORM 

THIS    SUBROUTINE    WILL    Ni:P"AL[Zf    A   )  LP  AT  I NG  POINT 

NUMBER,    P&ESFtVlNG    ITS    Dklf.lNU  SIGN. 

wc   ChFTk  rn°   '.  INOFRF  LCV.    AND  SFT    I  HF  frNOITIOM 

FLAG  APPROPRIATELY.      t  Si  F    FF  ROF  RFTJRNS). 

THFR    IS    AN    FNTP.Y    Ofj^jT    TO    FLMAT    A    5  I  GNH)  !\TEGc^ 

(FL')ATJ    ANO  AN   FNTRY  Pl;IM    !T   TIIIAT    Ar;  U MS  I L F  D 

I  NTFGEP . 

FNTRY  POINTS: 

Nf)RM      -    NORMAL  IZF    r  L 1 1  !\  T  I  NO    PT    NU'lt^FP    AT  |M,L) 
FLOAT    -    FLOAT   TRIPLE    PlrCISlCN    I'lTK.rH    ir  (h.L) 

PPFSfyviNG  SIGN   Mr    IN  (h.L?*3 
TtFXL      -    FLOAT    UNSIGNfll    (PUSIllvF)    IpIpLi'  Pt>fCISIf 

AT  (H.LI 


IPFGISTFSS  IIN  EXIT: 


A  =  CONOITICN  F  L  AG  (Sft  f'^DP  iTTUPNSl 
n,F    =  GARBAGE 

H.I*.  ,  l-.L    =    SAMF     AS    0\  ENTHY 


MOV 

CAI  L 

«0V 

Mf)V 

CALL 

JZ 

•^ov 


INR 
I  N  R 

INR 
XRA 
MOV 
MGV 


fl'^lCH 

V.UNil 
'1LSI 


;  SAVr  L   Ik  r 

;  GE  r  Chap  |  h.i  i    is  ,s  v,l  Tm  SIC 
;  SAVi    (-HAP    I »;  o 
;StST«^RI  L 

;C'lfCK    Fi>-     >\  Pit   MA\T  ISbA 

;  ir    Z F- R r;  >anI  I  SSA   tmE>>  l-  m 
;  G  FT    "»OST   SlUNiriCAMT  t^YTr  I 
;  MAN'  IS S  A 
;  SF  T  FLAGS 

;  K   MOST  S  l.if.f  ita»,t   =iM    =  | 

iMU!'"«.     IS    NC?."  Al  IZF  H   /.»,.;  ,[ 

;STORr   inF  C^/,f-  AC  tf  o  I  ST  ir 
;iiinf  ba  r,i   '.»-tr.K  f  30  UNOF^fL 

;L  l^Ai.F    .-.J  In    MlMrj,JW  CH.'.S 
;lt   C-rMJf.1    Tt-fN  UNCFPFi'j* 
;  Sn  Ir  T    "■•.*.  1 . 1  I<SA   L  FF  T 
iLtrrufi"!    CnAF  ACTf-csilf. 


;  L;'c.r 


:  r.T' 


i*.  IE. 

r  1  ir  Ch 


SUP1  "(OUT  I  NE  ZCMK 


yJPRilUTINE  ZMft-iK 


INR 
INR 
MOV 

OP  A 
OCR 


SUf.POUT  I  tJC  bCHK 

THIS  "GUTINfc 

,<*<  r          MO V  F  ,  L 

mov  i  .n 

CALL  ZCHK 

MPV  I  ,F 
PFT 


INP  I 

INR  I 
MOV 
OR  A 
RAL 

■inv 

DC 
MOV 
RAL 


MOV  I 

OCR 

MOV 

RAL 

MOV 

RET 


Ff     TP    I  I  TAT  Uf.SL.V 


;FIPT  SAVF    L    IN  F 

;  MAKE  I  H.l  }    POI  NT  IP.  CHA6 

;  h\kc  (H.L)    PC  INI  TO  C^AP 

;  "IKE  <  H.L  »    POI  KT  TO  CHAF' 

: z E Rf)  ACCUVwi  aicf 

;  ST(-PE    A  PL  US    I  ♦  ]    S  1  GN 

; PE  STORF  I 

;F.OTER   hFFI    TCi   FLOAT    IN  TIGER 
;  Pd  F  S  E-"  v  INC.  OR  I  G  I   AL  SIGf.  IN 
;  <;E  t   UP  CHARACTER  1ST  IC 
;  rxi  F  L  3  a  T  The  mj-'^cr 


IT  DETECTS 


Z  fRi")   FLAG    IF    IT   PET  EC  IS 


("YTE  Uf 


;SET  L  Tii  }-nk1  LAST 
;  SET  I  TII  F'llNT  TO  LAM  fYTt 
;LtJAO  L  FAST  SIGNIFICANT  *  Y  T  F 
;L  P'M';TS  TO  MIDDLE  I1YTF 
iU^  WITH  L  f  A  S  T  SIGNFICANT  BY 
II  POINTS  10  HOST  S  I  CNF  1  f  AN  T 
:('f  MANTISSA  IDFIGINAI  VALUE 
;0'<  IN  MUST  S  IGNF  ICV.T  «YTf 
iPfllJOMS    bITh    ZFPf    F  i_  A  L<  SrT 


)    FNP   »  L.TAT  I  KG    PT   Z  f  F  P 


,      .  .''.i'T1- 
3  f  ,.r  r_.    f   ,t    ji  L 
.  5i  5  \  1  p »    1  c  t  r  t  I 


;  LOAj  1 t 
;KILL  Carry 

;Slt|FT     IT  LEFT 
ISTOKF  IT 

JLOAO  IT 

; SHIFT    IT   L  E  F  I 
IF  CVW  SET  t*Y  FIPST  Shift 
IT   Hi  I  L    3 F.    IN  LSP    Of  SFCONU 

j  f  •  m  1 1 "  t  '» 1 1 1 . 5  J II  r. 

-./♦o-ail  nrr.f  tp 
SU^FOUT INF  URST 


3  A  c  8 
0AF9 
OA  FA 
JAFfl 
QA<=C 
OAFn 
OAFF 
0  A  F  F 
Jb  *J 
OftOI 
0SJ02 
JB33 
0604 
0B05 


0606 
013  C  7 
3BJ3 
0809 

oboa 

0&0R 
OBOC 

mo 

OBOF 
OBOF 
1ft  13 
Oil  1 
0F>12 
0B13 
08  14 
OBIS 
0B16 
OBI  7 
38  IB 
3H19 
OBI  A 
3  B  1  B 
OR  I  C 


3(3  10 
OBIE 
08  IF 
3B23 
0B21 
0B22 
0B23 
0B24 
3B?S 


0R26 
OH  2  7 
0628 
0B79 
3B2A 
0R2R 
092C 
3B2D 
0B2F 
0H2F 
0630 
OR  3 1 
38  3? 
0633 
OB  3  4 
3B35 
0R36 
06  37 
0838 
0B39 
3D3A 
0B3B 
0B3C 
3B3D 
0836 
083F 
0640 


ShIFIS   OI)UQLf    W.3PC  ONE  P|ACF 


Tn  THF 


I  G-<  T 


0B4I 
0B42 
0B43 
0644 
3845 
0B47 
0B49 


0R4C 
3B40 
0B4E 
0B51 
0652 
0B53 
3856 
0857 
0B58 
3859 
0B5A 


JP.Sfl 

0R5E 
385F 
0B60 
J961 
0B62 


^0° 


E6  7F 
C6  40 
FE  40 


R  AR 
MOV  ' 
INR 
MPV 
RAR 
MOV  ; 
INK  I 
MOV  . 
«  AO 
MOV  > 
MOV  i 
RF  T 


MOV 
MOV 

INR 
INR 
MOV 
MOV 


OiTfS   N)T    AFFECT  li 

;  /  o  e  4  f  p  MHMIFIFD  RIGHT  ShII-T 
;LOA-)    FI">S1  hGFD 
; DOT  ATE    IT  RIGHT 
;STnwt  lT 
TP 

;Lf!AD  SECG--r)  *CF» 
:SHIFT    IT  o|„Hl 
: STORE  IT 

:  /«**  IP  F  <  T  r  NS  irr; 


•TP 


ALL    C3NE  TP 


L  ,  E 


VL3 


I  ND  L 
ADO  M 
MOV    M  .  A 
MOV    L  ,  E 
INR  L 
MOV   A  ,  M 
MOV  L.E 
INR  L 
AOC  M 
MOV    M,  A 
■■OV    L.  P 
MOV  A.M 
MHV    L  ,  E 
ADC  » 
MOV    M,  A 


XRA  A 

MOV  M,  A 

INP  I 

MOV  M  ,  A 

IMP  L 

MOV  t*.  ,  A 

OCR  L 

OCR  L 
RET 


INR  L 

MOV  A  ,  M 

MOV  L  ,  3 

INP  I 

INR  L 

SUB  M 

MOV  L  ,  E 

INR  L 

INR  L 

MOV  M.A 

OCR  L 

MOV  A.M 

MOV  L.B 

INR  L 

SB*  M 

MOV  L  .  E 

INR  L 

MOV  M,  A 

OCR  L 

MOV  A.M 

MOV  L.B 

SRB  V 

MOV  L  1  F 


SU"°CtlTINE  DAOD 

AOOS  1^0  13  TUB  I  E  PRECISION 

w-aos.  r?i  if  TutP.F   is  ovkflw 

;SAVf    HAST    IN  E 
;*"AS:   V3   TN  L 
;['A<-"    ?4   TN  L 
.  ;/«*»TP 

;  L 0 AD   S  "'AHTP 
;SASE   TO  l 
"  b  a s E  ?I  Tn  l 
;/«"NP 

;  A  D  D  T^H    MAf ,  f  4  ?  s 
;STURf  ANSWF= 
;/ftt*TP  EXTENSION 


;  /•*.  TP  -  ALl  DCr.E 
;r;ASE    ?3    T'J  L 

:ma\ta  of  s  10  a 

;oASt    !"  I 

;  A^n    l«  I  TH  CA^PY 

;5TF;sf  a^swEF 

S UbRF'UT  I N E  CCL? 
CLFAI'S  TWO  SUCCESSIVE 
L  DC  AT  IONS    3F  N'EMCPY 


••10V 
RFT 


F  XTENS ION 


/•••"4LL    NFW  OSUH   -  SHOUT 

SUBRC'UTINI-  OSUB 

DOim  F    PRFCISIPN  SUBTRACT 

;SAVF  BASE   IN  E 

•/ee*Tr>  TxTFf.SION 

./START   WITH  LOWS 

; /NET  ADG 

;/NUW  SFT   UP   TO  SU^ 


;/P'iJT  BACK 
;/»»»Tp    _    ALL  OCNF 
;/GET    I OW  CF  LOP 
;  /SFT    TO  SOP 
;/SCT    TO   30P  I.Gw 
;/C.CT    DIFF.   OF  LO'„S 
;/SAVF    IN   LCP  LOW 
;/tq  1  up  LCw 
;  /  INTO  RAM 

;/EaCk  UP   TO  LOP  HIGH 
;/GFT  LOP  HK.H 
;/SET    TO  "tOP  HIGH 
;/SUH.   WI TH  CARRY 
;/SAVE    IN   LOP  HIGH 
:/INTO  P.».M 

; /ALL    DONE   -    MUCH  SHUPTFK 


SUBROUTINE  GCMAR 

THIS  SUBROUT^iE  RETUFNS  Ti 
THE  FLOATING  POINT  NUf-'ocfl 
IN  THE  A  REGISTER  W  IT"  it: 
LEFTf4CST  BIT. 

REGISTERS  ON  EXIT: 


I  CHAP  ACTLF  I  ST  IF  OF 
POI NT  FO  TO  BY  I H.L  I 
SIGN   CXTfNLitO    INTO  THF 


characteristic  of  ih.lj  v 
(origin  al  l)  ♦  3 

.D.F.H  =    SAME    AS    ON  ENTdy 


ITh  S  IGN  FXTE  NOEL' 


A°:         INR  L  ;MAkE    IH.L)    POI'.'T    TO  ChAP 

INR  L  ;MA^E    (H.L)    POINT    TO  CHAP. 

INR  L  ;MAKE    Ih.L)    I'OINT   TO  CHAR 

MOV  A, M  ; SET    A=ChAP    ♦  MANTISSA  SIGN 

AN!  1  770  ;GET  P.I  D  CF   MANTISSA  SIGN  Bl 

AO!  1000  ;PR0PA3ATE   CHAP    SIGN    INTO  LE 

XPI  1000  iPESTORf  CiPIGINAL  ChA«  SIGN 

rft  ;  rf  turn  with  |h,l)  pointing 

;chap.  =  original  (h.l  1  +  3 
; someone  Else  will  clean  up 

subroutine  cfchf 

this  subroutine  returns  the  characteristics  df  th 
floating  point  numbers  phi  nt  fo  to  by  ih.lj  anf1 
(h,  ei  in  the  a  and  e  registers  respectively, 
with  their  sig^is  extended  into  the  leftmost  bit. 

registers  pn  ex  i  t: 

a  =  char ac  t  e  r i  stic  uf  . 

E  =    CHARACTERISTIC  OF    IH.R)   W I  Th  SIGN 
B.C.H.L    =    SAME    AS    ON  FNTBY 


C.3 

GC  HAR 


mov 

MOV 

CALL 

MOV 

MOV 

CALL 

DCP 

OCR 

DC  P 

RFT 


SUBRGUT  I  NE  CCMP 


;SAVE  LPTP    IN  E 
;  SE  T  L    =  I3PTP 

I GE T  CHAR(H.e)    WITH  SIGN  EXT 
;PESTORF  L    =  L-»TR 
;  SF  T  E  =  CHAk In. B 1    w I TH  SIGN 


;SET  ArCHAF't 
I  RE  STORE  L  =  LPTR 
;  RESTORE  L  =  L  3  T  R 
;PEST0PC  L  =  LI>T° 
; SET  n=A=CHAP( 


ITH  SIGN  E 


L  ) 


THIS  SUBROUTINE  COMPJ»PFS   T  He    CHARACTERISTICS  OF 
FLOATING  POINT    .NJMBEPS  POINTED   TO  RY    IH.L)    A  Ni>  (H 
THE    ZERO  FLIP-FLOP    IS    SET    If    CHARlH.Ll  EQUALS 
CHARlH.B).      It-    CHARtH.L)     IS    LESS    THAN   CHAP(H,F\)  T 
THE   CARRY  BIT   WILL    BF  SET. 

REGISTFQS  PN  EXIT: 


SAMt-    AS   ON  ENTRY 


MOV  0 
SUB  E 
RAL 

MOV  A 
RFT 

FD  ROR  RETURNS 


;FETCH  CHAhAC  I  FFTIS  TICS  HIH 

;  I N  Tn  4    ICHAPtH.L 1  1    AND  f  (C 

; SAVF  CmAP    ( h,L 1 

;  SUBTRACT  f    (CHAR  {H.3H 

;  F  U  T  A  T  E    SIGN    BIT    INTO  CARPY 

RESTORE    A-CHArl  I  M  »  L  ) 

; P  F  TURN 


THE   FOLLOWING  CODE    IS  NSt!^  TC  FITUPN  VAP  ICUS 
FPPCi;   CONDITIONS.      IN    r A C H  CASE    A    FLOATING  PUINT 
NUM=5E°    IS  STORED    IN      THF  4  wOPOS  P01MTFI)    Tu   BY  [H 
AND    A   FLAG    IS    STOREN    IN    ThE    ACC'.IMUL  A  T  0  P . 


CONDIT ION 

FL  AG 

PFSULT 

♦  I 

PFSUL I 

-  ) 

UNO  E  H  F  L  Cw 

377 

COO 

•10') 

DCO 

1 

:  (  : 

COC 

000 

OVERFLOW 

1  77 

377 

377 

?77 

377 

INOFF  INITF 

377 

377 

377 

377 

377 

3  77 

1  n 

377 

NORMAL 

300 

XXX 

XXX 

X<X 

XXX 

XXX 

NORMAL  ZERO 

300 

1300 

00  0 

OOO 

1  JO 

1  ALWAYS 

RFTU 

ENTRY  POINTS: 

WUNll  -  WRITE  UNDERFLOW 

WOVR  -  WHI T  f  OVERFLOW 

WlNP  -  WRITE  I  NDFF  I NI  T  c 

WZER  -  WRITE  NORMAL    U R 


FEBRUARY  1977 


INTERFACE  AGE  105 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


0863 
03  55 
}Bfc3 


J36A 
0B60 
086F 
0670 


0B71 
3B73 
)876 


087fl 
0B7B 
0B7D 
0R7F 


Oi37F 
JB81 
3B84 


0BB6 
0B39 
JB8B 
OBBC 


0B80 
0B8F 
JR9F 
0B90 
OB  92 
)U93 
0B96 
08  9  7 


JR<3F 
06A0 
03A1 
0BA2 

0RA3 
0BA5 
0BA6 
13A7 


06A3 
0BA9 
OB  AA 
OBiD 
OBAE 


JBAF 
OBRO 
OBBI 
>B34 
00B5 


0B36 
JBB9 
OBBB 
05BE 
OBBF 
ORCO 
DPC3 
0HC4 

our.  5 

0BC6 
OBCB 
0BC9 
OBCA 
OBCR 
3BCD 
OBCE 
OBCF 
ObDO 
0BO1 
3B02 
0B03 


16  <,0 

O  <JF  OB 
3T  0) 


16  3F 
CI  9F  08 
3F  FF 


0SD4 
JBD7 
0BD9 
OBDC 
OBOD 
OBDE 


0BE1 
ORE  2 
JBE3 
08E4 
0BE5 
)BE6 


0BE7 
0BF8 
JBE9 
OBEB 
OBFC 
OBED 
OBEE 


3UEF 
ORFO 
0BF1 
0BF2 
0BF3 


CD   7F  08 


CT  41  OB 

FF  3F 

CA   76  Ofl 


CO  41  08 

FE  CO 

CA   68  OB 


UFLWl  : 


rfPVR: 
UFLWl : 


MV  I 
CALL 
MVI 


CAL  L 
MV  I 
OR  A 
RE  T 


MV  I 
CALL 
MV! 


CAL  I 
"V  I 
PRA 
RET 


MVI 
CALl 
MVI 


CAl  I 
MV  I 

OR  A 
RFT 


I  NX 

I  MX 
I  MX 


o,  io:)Q 

WCHAP 
A.O 


D,  773 
WCHAR 
A  i  3  7  70 


D,  77Q 
WCHA? 
At  3  7  7v 


;LdAD  O-tAPACTFP  I  SI  IC    INTO  D  R 
;WITr    CHAP  ACTEP  1ST  If 
;LOAO   MANTISSA  VALLIT 

;KF    ASSUME    ufPF    THAT   ALL  BYT 
;f)F    Mf.NT  ISSA   AP  F   THE  SAMF 
;  WR  I  TF    Tut   MAM  ISSA 
;SFT    ACCUMULATOR   TC  FLAG 
;SET   FL  ACS  PROPEPLY 
RETURN    IWMANT   PFSMFEU  1H,I. 

WR1  TF   OVERf  LOW 
;L0AO  CHARACTERISTIC    INTO  D  PF 

;WR|Tr  CHAPACTEPIST IC 
;LOAO  MANTISSA  VALUE 

;WE   ASSUME    hERF    THAT    ALL  BYT 

;0r   MANTISSA  APE   THf  SAMf 

IWWITF    THE  MANTISSA 
;SFT    IVCCIMULATOP    TO   F  I  AC 

;  SET    FLAGS  PROPERLY 

;RFTUPN    IWMANT    PF  ST' 1PE0  (H,| 

WRITE    INL'EF  I  N  I  T  F 

;L!:ao  characteristic  into  o  he 
; k' i  i e  chapactepist  ic 

;luad  mantissa  value 
;w£  assume  hlrf  that  all  byt 

;rr    MANTISSA  A!>E   THE  SAME 
; WRITE    THE  MANTISSA 
;  SFT    ACCUMULATOR.   TO  F  LAG 
;  SET    FL  ACS  PROPERLY 
;RETUi>M  (  ViM  AN  T   PFSriPtO  |M,1 


0)0  :  STORE  CHAP  ACTER  I  ST  IC  FOR  Zfc 

Ann  a  ;ZEPJ  ACCUMULATCO 

CALl.  in  M  ANT  ; STPHF    ZEHP  MANTISSA 

OR  A  A  ;SET    FLAGS  dRQPEHLY 

RFT  : ftFTURN 

PPUTI\F    TO   WRITE    MANTISSA  Fi.»  fcPP.JP   P  b  TURNS 

y,AfiT :  OCX         H  ;PC1NT    TC  LFAST  SIGNIFI 

;TF  MANTISSA 
MOV  M.A  ;  STOKE    L  SB  YU   0  F  MANTISSA 

DCX         H  ;PNT   TO  NEXT  LEAST  SI^N 

;PF  MANTISSA 
MOV  M.A  ;  STORE    MSbYTF   CF  MANTISSA 

OCX         H  ;i'CIsT    TU  mQST  SIGNIFIC 

;T,F   MAN  I  ISSA 
MOV  M.A  ; STORE    "  SI*  YTfc   0  E  MANTISSA 

PET  ;PETURN    IH.L)    POINTS    TU  PEjI 

;  FLOAT  I  NT*  PTINT  RESULT 

ROUTINE   TO   WRITE    [".HA RACTERT  IC    FOR    bPPUP  PFTUnt,S 

Nt'TF:      WE    PPESEHVE  ORIGINAL    MANTISSA  SIGN 

ft    ENTPY   D  CONTAINS   NEW  C  H  AP  A  C  T  E  P  T  I  S  T  I  C    TO    '^E  STuREO. 

:hAP:        INR  L  ;SET    Ih.L)    TO   PC1NT    TO  Ch/i«A 

IN»  L  ;PAPT    IF  ABflVE 

IN»  L  ; OAPT    Or  AOOVE 

MOV  A  a  m  ;LOAD  CHARACTERISTIC  A 

;  A<NO  MAN  T  I  SSA    S  IGN 
)0  ;JUST   KEEP    MANTISSA  SIGN 

IN    NEW   CH  Ai*  AC  TFR  I  ST  (I 
k  ; STO» E    IT  MCk 

;  Rt  T  URN  WITH  IH.L3  POINT  TU 
;(lf  RESULT 

:  SOMEOfJE   ELSE   W  1 1  L    FIX  UP   I  H 


AM 
OR  A 
MOV 
RE  T 


SUBROUTINE  INDFC 

THIS  ROUTINE  «RITES  A  FLOATING   INDEFINITE.  SETS 
THIS   WRITES    W-WTES   A   FLOATING  PI"!  I\T  INDEFINITE 
AT   <H,ri,    SFTS   THE  CGNDITICN  Ft  AG  AKO  PFTUHNS 


CALL  W  [NCI 

MOV  L  ,  £ 
RET 

SUBROUTINE  wZERC 


;  SAVF.    I  PTii   If  j  F 

;SET  L=CPTK   SO    I  H  ,  L ) — ADDR  OF 

;WP  ITC    INDEF  If;  I  TE 

;PFSTO^r   L  =  L  P  T  F 

; P6  TURN 


;  SAVE    L  PTP    IN  E 

;si:tl  =  cptp  so  ih,l]=ador  ur 
;w*l"F  NCt^M^L  zcpo 

;  HiF  STF'HE    L  =  LPTR 
;t>FTUPN 


PC:         MQV  f.L 
MQV  L  •  C 

CALL  HZEP 
MOV  L  .  E 

RFT 

SUBROUT INE  INCR 

THIS   SUBFtUUTINC    INCREMENTS  THE  CHARACTERISTIC 
PF  THE  FLOATING  POINT    NUMBER   POINIEE    TO  BY  (H.LI. 
wr    TEST   FOR  QVFPFLGks   A  NO  SET    APPROPRIATE  FLAG. 
(SEE    EiiHROR  RETURNS). 


CONDITION   FLAG   (SEE   ERROR  RETUPNS) 
CLCBBE  RED 
,H,L   =    SA^5    AS    ON  FNTRY 


GCHAO 
MAXC< 
UFLWl 


[NO<3: 
INCR?: 


JMP  II 
I  N  P.  L 
INR  L 
INP  L 
MVI    A,  177' 
ANA  D 
MOV    0,  A 
MOV    A,  M 
AN  I  200Q 
OR  A  D 
MOV   Mi  A 
OCR  L 
DC  R  L 
OCR  L 

XRA  1 
RET 


SU^tiHUT  INF  DECR 


:GET  char  *  I  th  sign  fxtenoei; 

;  C  '1 M  P  A  R  E  WITH    MAX   CHAK  PFRM! 

;  INCREMENT   ;*OULC  CAUSE  OVFRF 
I/SAVE    IT    IN  I 
;  /  INCRt  '^Ffa    I  T 

;JUMP   AROLNO   ALTERNATE  ENTPY 

;C1ME  HERE    TO  STORF    CHAR ACT  E 

;I>0  1NT    (H,L)    TO  THAR 

;  POINT    I  H,  L  )    TC   C  HAP 

;  /K  ILL    S  I  GN  BIT 
;/BACk  TO  0 
;/NOW  SIGN  IT 
; /GET    MANTISSA  SIGN 
;/PUT    TOGI.  ThER 
;/STORE    IT  BACK 
;/NOh   BACK   TO  BASE 


«  TP 


;SET   SUCCESS   F  L AO 


WE  TEST  FOR  UNDERFLOW  ANO  SET  APPROPRIATE  FLAG. 
<  SEE    ERPROR  RFTURNS) . 

PFGISTFRS  ON  EXIT: 

A   =   CONDITION    FLAG   t  SEE    fPP.PR  KETUPMS) 
0  =  CLCB8ERE0 

9,C,H,L  =  SAME  AS  ON  ENTKY 


MOV 
OCR 
JMP 


ORA 
MOV 
RE  T 


MVI  D.? 
MOV  A , M 
'lOV   L  .  E 


GCHAR  ;GEI    CHAP.   WITH    S  I  SN  EXTENDED 

MINCH  iCOMPAHE    WITH    H  1  N    CHAP  PE>IMI 

UFLWl  ;  IJFCP  EMENT    WOULD  CALSF  UNUEP. 

D.  A  :  SAVF  CM  AP  AC  T  ER  ST  IC    IN  11 

0  ; DECPFMENT  ChAS  AC  TF R I  ST  I C 

INCP?  ;G0   StrjFF   IT  BACK 

SUBROUTINE  AORS 
SETUPN    S?l    IF  BASF  ?6 
HAS  A    1    IN  MSB 

;SAVE  RASE 

;BASF    ?6   TO  L 
I  ; L  OAD  IT 

;SET  FLAGS 

;PESTORE  BASF 

SUflPHUT IHI  TSTP 
CHECKS  C   PTP   TO  SEE  IF 

N  L  Sfi  ?  1 

RETURNS   Z?l    IF  NOT 
DESTROYS  E.O 
;SAVE  BASE 
:  ;c    PTP  to  L 

»  ;  M  A  SK    TU  0 


MOV  E  tL 
MUV  LtC 
MOV  M,  A 
*<0V  L.F 
PET 


; AND    VALUE    hi TH  MASK 

SUBROUTINE  .1CPF. 

STORES    t    IN    LTCA1  ICN  CF  fPTR 

LPTR    IN  E 

;SAVF  LPTP. 

;CPTf»   TU  L 

;  SI  ORE  A 

;PESTO"F  hASE 


3HF4 

OBF  S 

0BF6 

0BF7 

0BF8 

3BF9 

OBF  A 

ORFB 

1HFC 

OB^D' 

ORFE 

onrr 
ocoo 

3CD1 
0C02 
00  D3 
)C0^ 
OCO") 
0C06 
QC07 


OCOD 
0C10 
0C13 
0C16 
OC  17 
0C1A 
OC  18 
0C1C 
OCIO 
OC  IE 
0C1F 
0C21 
5C22 
0C23 


0C2<t 
0C2  6 
0C2  7 
0C28 
0C29 
0C2A 
0C2B 
0C2C 
0C20 
0C30 
0C31 
JC33 
0C3-i 
0C35 
0C37 
0C38 


OC^.4 
0C4A 
0C46 
0CV9 
OC^.B 
OC^.E 
0C5O 
0C53 
0C54 
0C55 
0C56 
0C59 
0C5A 


0C5B 
0C5C 
0C5D 
0C60 
0C61 


0C62 
0C63 
0C64 
0C67 
0C68 


CD  F9  >A 

DA  17  OC 

CD  F^  OP 

D2  17  OC 


MOV  A, 

MOV  F, 

MOV  L. 

CMP  M 

MOV  L^ 
RNZ 

INR  I 

MOV  A, 

MOV  L  • 

INP  L 

CMP  M 

MOV  L  t 
«NZ 

INR  I 

INR  L 

MOV  A, 

MOV  L  . 

INR  L 

INP  L 


CALL    01  SI 
JC  OVEP 
CALL  OCMP 
JNC  OVER 
RET 

CALL  OSUB 
MOV  E,L 
MOV  L,C 
IN«  L 
INR  L 
MOV  A  ■  M 
A  D  I  1 
MOV    Mt  A 
MOV    L  .  E 
RET 


MVI 
MOV 
MOV 


A  ,  M 


■•10V  L  i  E 

MOV  M  ,  A 

INR  C 

INP  F 

DCR  0 

JNZ  REP5 

MOV  A, E 


SUI 
MOV 
MOV 
SUI 
MOV 
RFT 


SUBPOUTINE  LDGP 


RET.  ISTERS  ON  EXIT: 


WORDS 

;NUm  MftflTA   TO  A 
ISAVE    USE    IN  E 
;RASF?3    TO  L 
;COMPA*t    V.ITH    DEN   M  ANT  A 
; R  E  TURN   BASE    TC  L 
IPTTUHN   IF   NOT   THE  SAME 
;l    TO  NU.M  MAMP. 
;  L  0  A  D  IT 

IDF.  N  "".AN TP    ADD    TC  I 
;PASE?   <i    TO  L 


:/CfT  rr;°  compare 

;/BYTE    3  NOU 
;  /Cf'MPARE 

;  TP  -    ALL  UONF 


OF    OOUHL  f 
PRECISION  FLOATING  PT  CIVIDF 
ENTER    AT    ENT1   ON   FIRST  CYCLE 
ENTER    AT   ENT2  ALL  THEREAFTER 
;  SHIFT    MOVING  DIVIDEND 
;  IF  CAKRY?l,NUM.GT.O 
;COMPARF  NUM   WITH  OEN 
;IF  CARRY  NOT   SET , NUM.GE .DEN 

; C ALL  DOUBLE  SUBTRACT 
;SAVF   BASE    IN  E 
; BASE   ?fc   TO  L 
;  B  A  SE:    7  7   TC  L 
;  /  *  «  *  T  [> 

;AUl)  1 

;PUT    IT  OACK 

; RE  S TORE   BASE   TU  L 

SUBPOUTINE  LXFP 

MOVF  S  C  PTK    TO  E  PTP 

MOVFS    3   WURI^S    IF   ENTER    AT  LXFP 

;/MOVE    ^  WCPDS 

;CPTR    Tf)  L 

;?CPTP>    TO  A 

;EPTR    TO  L 

; / I NCREMFNT  c 

;/INCPFMCriT  I    TO.  NEXT 

;/TFST   FOP  HON E 

;/G0   FOP    TOR   TILL  DO 

;/N:lis-  RESET  C   ANO  E 

;/PESET  BACK   BY  4 

;/PUT    [JACK    IN  E 

I/NOW  RESET  C 

;/BY  *, 

;  /BACK  TO  C 

;/OCNE 


0C39       CD  4C 
0C3C  93 
)C3D  C3 


A   =    CONDITION  FLAG    [SEE  FRfflR 

D » E    =  GARBAGE 

B.C.H.L    =   SAMF    AS  QN  ENTPY 

REGISTERS  ON  ENTRY  : 

1H,R)  =  AODPESS  OFF  DIVISOR 
IH.C)  =  ADDRESS  OF  QUOTIENT 
( H , L )    =   ADDRESS  OF  DIVIDEND 


;SF_T  E  =  CHAP  (H|B  J  i  A  =C  H  AR  (  H  i  L 
;SUPTR4CT  TO  GET  NEW  CHAPACT 
;G0  CHECK  FOR  E>VE R / UNDER F L 0* 
;ANO  STORE  CHARACTERISTIC 


CALL 

SUB 

JMP 


SUBROUTINE  LMCP 


REGISTFRS  ON  EXIT: 

A  =  CONOITION  FLAG  ISEE  FPROR  RETURNS) 
O.F    =  GARBAGE 

B.C.H.L  =  SAME   AS  ON  ENTRY 
P£GISTERS  ON  ENTRY: 


AODRESS  OFF  MULTIPLICAND 
ADDRESS  OF  PPCDUCT 
ADORFSS  OF    MUL  T |PL ICR 


5SET    E=CHft«IH,B)t  A=CHAP|H.L 
;AOD  TJ  GET   NEW  CHARACTEPISI 
;NnW  FALL    INTO  THF  ROUTINE 
;WHICH  CHECKS  FOR  OVER/UNOFP 
; A  ND   STORE  CHAP  AC TE RT I  ST  I C 


SBUROUTINE  CCHK 


THIS  SUBPOUTINE  CHECKS    A  CH AP AC T ER I S T I C  IN 
THE    ACCUMULATOR  FOR  OVERFLOW   OP  UNDERFLOW. 
IT    THEN   STORES   THE  CHARACTERISTIC,  PRESERVING 
THE    PREVIOUSLY   COMPUTED  MANTISSA  SIGN. 

I     REGISTERS  ON  ENTRY: 

<H,L)  =    ADDRESS  OF   ONE  OPERAND 

IH.B)  =    ADDRESS  OF  OTHER  OPERANO 

IH.C)  =  ADORESS  OF  RESULT 

A  =  NEW  CHARACTERISTIC  OF  RESULT 

REGISTERS  ON  EXIT: 

A  =   CONDITION  FLAG    ISEE  ERROR  RETURNS) 
0 i E   »  GARBAGE 

B.C.H.L    =  SAM?    AS  ON  FNTRY 


FE  40 
OA  53  OC 
FE  80 
OA  5B  OC 
FE  CO 
OA  62  JC 
50 
69 


1000 
STORC 

2  no 
oflw: 

3000 

uflw: 

E.L 
L,C 


CPI 

JC 

MDV 

MOV 

MOV 

CALL 

MOV 

RET 


SUBROUTINE  OFLWC 


WC :        MOV  F ,  L 

MOV  L.C 

CALL  WOVR 

MOV  L.E 
RET 

SUBROUTINE  UFLwC 


MOV 

MOV 

CALL 

MOV 

RET 


SUBROUTINE  CSIGN 


REG  ISTERS  ON  EN  TRY : 


; ENTER  HERE   TO  CHECK  CHAPACT 

;  CHECK  FOP.  0  TO  +63 

;  JUMP    I F  OKAY 

5CHECK  FOR  +64  TO  +127 

;JUMP    IF  OVERFLOW 

;CHECK   FOR  -128  TO  -65 

;JUMP   IF  UNDERFLOW 

ISAVE  L    IN  E 

;LET  L   PCINT   TO  RESULT 

:  SAVE  CHARACTER  ISTIC    IN  0 

;STO«E  CHARACTER  I  ST IC 

; RESTORE  L 

;  RETURN 


L=CPTR,    SO    ( H( L ) - ADOR  0 


JWRITF  OUT  OVERFLOW 
I  RESTORE  ■ 
;  Rt  TURN 


5  SAVE  LINE 

;SET  L  =  CPTR,  S3  (H,L)=AOI)R  0 
; WR  t  T  F  OUT   UNDE  FLOW 


[H.CJ  =  AOORESS  OF  RESULT 
REGISTERS  UN  EXIT: 


106  INTERFACE  AGE 


FEBRUARY  1977 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


JC69 
0C6C 
0C6D 
3C70 


0C71 
0C72 
OC73 
0C74 
0C75 
0C76 
0C77 
0C7B 


0C79 
0C7A 
0C7B 
0C7C 
0C70 
3C7E 
0C7F 
0C81 
0C82 
0C83 
3C84 
OC85 
0CB6 
0CB7 
0CB9 
OCBA 
OCBB 

ocac 


0C8D 
0C8E 
OCBF 
0C90 
0C91 
3C92 
0C93 
0C94 
3C95 
0C96 
0C97 
0C98 
0C99 


0C9A 

CO 

OA 

OA 

3C90 

C2 

82 

)C 

OCAO 

OC 

OCA  1 

OC 

OCA2 

69 

OCA3 

CO 

80 

OR 

3CA6 

2C 

OCA7 

?.C 

OCAB 

2C 

3CA9 

2C 

OC  AA 

AF 

OCAB 

77 

OCAC 

cn 

93 

on 

OCAF 

C3 

1  1 

on 

0C82 

56 

OCB3 

?C 

OCB4 

46 

3CB5 

0CB6 

a 

OC87 

2C 

OCBB 

7E 

0CB9 

OC 

0C8A 

OC 

OCRS 

69 

OCBC 

72 

acBo 

2C 

OCOE 

70 

0C8F 

?r 

3CC  3 

73 

OCCl 

2C 

OCC2 

47 

0CC3 

E6 

7F 

OCC5 

77 

0CC6 

FF 

40 

0CC8 

CA 

CF 

OC 

OCCB 

06 

01 

occn 

F6 

4  0 

OCCF 

07 

OCOO 

2C 

OCOl 

77 

OCD2 

78 

3C03 

CO 

93 

00 

OCD6 

2E 

17 

OC08 

C  0 

F4 

00 

OCOB 

CO 

AO 

30 

OCOE 

47 

OCOF 

E6 

40 

OCEI 

7B 

OCF? 

CA 

CB 

OC 

3CE5 

3F 

83 

OCE7 

90 

0CE8 

FP 

12 

OCEA 

FA 

F6 

or. 

OCEO 

CO 

A6 

00 

OCFO 

C6 

05 

0CF2 

77 

OCF3 

C3 

08 

OC 

OCF6 

2E 

IB 

OCF8 

CO 

F4 

OD 

OCFB 

CO 

AO 

00 

OCFE 

Ff 

01 

ODOO 

F2 

OC 

on 

0003 

CO 

A6 

00 

0D06 

C6 

01 

0008 

77 

3039 

C3 

f  B 

OC 

OOOC 

FF 

07 

ODOE 

F2 

03 

OD 

0011 

69 

00  12 

20 

0013 

20 

0014 

36 

05 

0016 

5F 

3017 

CO 

79 

3D 

001A 

FE 

OA 

00  IC 

F2 

CC 

00 

00  IF 

CO 

30 

00 

0D22 

CO 

51 

00 

0025 

CO 

30 

on 

0028 

C2 

22 

OD 

0028 

3E 

C5 

3D2D 

CD 

FO 

OF 

0D30 

CO 

CI 

00 

0D33 

47 

0034 

CO 

93 

OD 

0037 

7B 

OtllB 

E6 

3F 

001A 

cn 

E3 

OD 

0030 

C6 

80 

3D3F 

cn 

FO 

OF 

0042 

69 

0043 

?.D 

0044 

20 

0045 

7E 

0046 

FE 

05 

0048 

3E 

AE 

0D4A 

CC 

FO 

OF 

0040 

56 

004E 

15 

O04F 

72 

CALL  MSFH 

XRA  E 

CALL  CSTP 
RET 


MflV  E.L 
MOV  L.C 
INR  L 
I N  R  L 
INR  L 
HOV   Mi  A 
MOV  LfE 
RET 


;SET  AsSICNlH.L),  E=SIGN(H,B 
EXCLUSIVE   OR  SIGNS  TIJ  GET  N 
;  STORE   S  IGN   I  NT  Li  PESULT 
; RE  TURN 


SUBROUTINE  CSTR 
STORES  VALUE  IN 
CPTR72 

PUTS  LPTR   IN  E 
;SAVE  LPTR  IN 
;CPTR    TO  L 
;CPtr?2 
;  TO  L 
;  /•*• TP 


SUBROUTINE  MSFH 

THIS  SUBROUTINE  FETCHES  THE  SIGNS  nr  THE  MANTISSA 
OF  THE  FLOATING  POINT  NUM3ERS  PRINTED  TO  BY  (H.LJ 
AND    (H.B)    INTO    THE    A  AND  E   REGISTERS  RESPECTIVELY 

REG  I  STERS  ON  F  X  I T: 

A   =    SIGN     UF    MANTISSA    OF    I H, L  ) 
F   =    SIGN  OF    MANTISSA  CF  (H,B) 
B.OD.H.L  =    SAME    AS   ON  FNTRY 


128 


MOV 
MOV 
INR 
INR 
INR 
HOV 
AN  I 
HOV 
HOV   E  .  A 
INR  L 
INR  L 
INR  1 
HOV    A,  M 
AN!  128 
OCR  L 
OCR  L 
OCR  I 
RFT 


MOV 
HOV 
IN" 
INR 
INR 
MOV 
HOV 
INR 
INR 
INK 


; SAVE  LPTO 
;8PTP    TO  L 
; BPTR72 
;/»»»TP 
;T0  L 

;?BPTR?2>To  A 
;SAVE   HANT  SIGN 
;LPTR    BACK    TC  L 
;STORE    BPTH    MAMT  SIGN 

:lpto?2 
;  /••• TP 
;  TO  l 

;?LPT3?2>T0  A 
;SAVE  LPTR  MAMT  SIGN 
;LPTR  OACK 
;  TO  L 


SUBROUTINE  BCTL 

Movrs  rptr  char  to  lptp  chap 

OESTPOYSE 


;LPTR 
;  BPTR  TO 
;BfMR  ?2 
"    •  TP 


;TC  L 
;6PTR  CHA'    TO  A 
; L  P TR    TO  L 
;LPTR  12 
:to  l 

;  /*»»TP 

;STCRC  RPT"  CHAF 
;i  PTR   TF'  L 


f // /    5   DIGIT    FLOATING   °T.  OUTPUT 


I\  I  aTP  Cm As 


••••••*ROUT  INE    TO   CONVFPT    FLOATING  PT. 

♦♦•NUMBERS   T3   ASCII    ANO  OUTPUT    THfH    VIA    A  SUBPOU 
***CALLEO   OUTR     -     NOTE:    THIS    IS  CUPPFNTLY   Sr T 
•••TO  OOT'S  OUTPUT  POUTl\E 


CALL 

J  N  7 

I  NR 

INP 

MOV 

CALL 

I  NR 

I  NR 

I  NR 

I  NR 

XP.A 

MOV 

CAH 

JMP 

MOV 
INR  _L 
MOV    R,  M 
INR  L 
MOV    E  i  M 
INR  L 
MOV   A  ,  M 
INR  C 
INR  C 
HOV  L.C 
MOV  M.D 
INR  L 
MOV  M,8 
INP  L 
MOV  M  i  F 
INR  I 
MOV 
AN  I 
MOV 
CP  I 


SIGN 
MOSKP 
0,  M 


;CHrCV    FOP    Mfh  I 

;N1T  7EP!I 

;  I  1    *AS.    (•!  F  Sf  T 


;St7T    IT    TL  JFPJ 

;«*ITt   OUT  SIGN 
:jijtput  IT 

;/",rt  the  mj^I'Ep  to  cr,N 


; /'.  wORD«*«TP 
: /•*• tp 

;/OFFSET  SCRATCH 


p0  INTER   BY  2 


1/70 
A 


TR  Yl  : 
T  ST  1  : 


OKI  : 
MOSKP: 


1  3  3Q 
JZ  NZRO 
SUI  1 
AN  I    1  1 00 
PLC 
INR  L 
MOV  M.A 
MOV   A , B 
CALL  SIGN 
MV I    L ,  ITEN5   4  NO 
CALL  CCPT 
CALL  GCHR 
MOV  B ■ A 
AN I     10  30 
MOV    A  ,  B 
JZ      GOT  V 
HVI  A.230U 
SUP  B 
CPI  220 
JM  TRYi 
CALL  MDRO 
A  D  1  5 
MOV    M,  A 
JMP  TST9 
MV  I    L  ,  I  TF N  A'iO 
CALL  COPT 
CALL  GCHR 
CPI  1 
JP  OKI 
CALL  MORD 
AO!  1 
MOV   M i A 
JMP  TSTI 
CPI  7 
JP  MOGN 

MOV  L.C 
OCR  L 
OCR  L 
HVI  M,5 
HOV  E , A 
CALL  LSFT 
CPI  120 
JP  TWOO 
CALL  OIGO 
CALL  HULTT 
CALL  OIGO 
JNZ  POPD 
HVI    A, 3050 
CALL  OUTR 
CALL  GETEX 
MOV  B . A 
CALL   S  IGN 
MOV  A.B 
ANI  77Q 
CALL  CTWO 
AOI  2600 
CALL  OUTR 
MOV  L.C 
OCR  L 
OCR  L 
MOV    A,  M 
CP  I  5 

MVI  A.256Q 
CZ  OUTR 
MOV  O.M 
OCR  0 
HOV  H.O 


;/*«*  TP 
;  /*  *»TP 

I/SAVF   C1PY  CF  CHAR    L  SIGN 

;gft  Only  chap. 

;/SAVE    ABS  I  NUMBER  I 
;CK   FUR  ZFRC 

;/GFT   SIGN  Cf    OfC .  EXP 
'■  /GF  T   SIGN  OF  CuAP. 
;MOVE    IT   TO  SIGN  PUS  IT  ION 
;  /MOVE    Tf?    DECIMAL  EXP. 
;/SAVE    SIGN  Of  FXP. 
;/GET   MAN  T .    SIGH  t'ACK 
;/GUTPUT  SIGK 
3  770)      ;/TPY  "Ul T .    0^  0  I V .    BY  i 
;/M^r  A  rnPY   IN  PA>" 
; /GET   CHAP.   OF   NUy 3FR 
:/SAVE  A  COPY 

;/GET   ARSrLUTE   VALUF   Of  ChAx 

;/INCASF  PLUS 

;/AL*EAOY  PLUS 

;/mA<E   MINUS    INTC  PLUS 

;/plu$=2oob-»:hah 

;/TFSt    F0&  USF   C-  1C300O 
; /WCNT  GO 

J/WILL  GO   SC   OC  IT 
;  /  I  NC P F M E N T   f.lEC.    EXPONENT  BY 
;/UPGATE  ME* 
;/G0    TRY  AGAIN 
3770)      ;/NOW  USE   JUST  TFN 
;/PUT    IT    IN   P AM 
;  /GET    CHAP\C.TCP  ISTIC 
J /MUST  GET    IN    RANGE    1    \h  o 
; / AT  L  EA  ST    ITS    I   C  P  BIGGER 
;/MUST    MUL   OF    DlV   b Y  10 
;  /  I  NCREMENT  OECIMAl  FXP. 
;/UPOATF  *FM 
; /NOW    TRY  AGAIN 
;/TEST    F 0 °    LESS  THAN  7 


;/IN    1ST   WORD  OF  SCRATCH 
1/5  DIGITS 

;/SAVF   CHAR.    AS  LFFT   Sf)  I  F  T  CCiU 

;/SHlFT   LEFT    PROPER  NUMttER 

;/TEST   FOP    2   DIGITS  HEPF 

;/JMP    IF    2  DIGITS  TO  OUTPUT 

I/CUTPUT   FIRST  DIGIT 

;/MULTlPLY   THE   NUMBER   BY  10 

;/PRINT   DIGIT    IN  A 

;/MORE  DIGITS? 

;/N0  SO  PRINT  E 

;/BASIC  CALL    TO  OUTPUT 

;/GET    DECIMAL  FXP 

;/SAVF    A  COPY 

;/OUTPUT  SIGN 

; /GET    EXP  RACK 

;/GFT  GOOO  BITS 

;/G0  CONVEOT    2  DIGITS 

; /MAKE   A    INTC  ASC  I  I 

;/OUTPUT  OIGIT 

:/CFT    OIGIT  COUNT 

;/BACK   UP    TO  OIGIT  COUNT 

;/TEST    FOR  DECIMAL  PT 
;/PRINT   .    AFTER    1ST  OIGIT 
;/JUST    IN  CASE 
:/OUTPUT    .    IF    1ST  OIGIT 
;/NOH  DECREMENT  OIGIT  COUHT 

:/UPDATF    MFM   AND   LEAVE   FLOPS  S 


0050 
0051 
0053 
0D56 
0057 
0058 
0059 
0058 
005C 
0050 
0D63 
0061 
0063 
0064 
0066 
0067 
0068 
006B 
006C 
0060 
0D6F 
0D70 
00  73 
0074 
0075 
0076 
0D77 
0078 
0079 
007A 
0D78 
0D7C 
0070. 
007E 
0D7F 
0D80 
0081 
3082 
0083 
0084 
0085 
0086 
0DB7 
0088 
0089 
0D8A 
008ft 
ODBC 
0080 
008E 
ODBF 
0090 
0093 
OD95 
0097 
0D9A 
0D9C 
0D9F 
JOAO 
00A1 
00A2 
0DA3 
00A4 
0DA5 
0DA6 
00A9 
)0AA 
OOAB 
OOAC 
OOAO 
OOAE 
0080 
0DB1 
0082 
00B4 
0DB7 
OOBA 
30BR 
OOBC 
0080 
OOBE 
OOC  I 
ODC2 
00C3 
0DC6 
0DC9 
OOCC 
OOCF 
ODOO 
0003 
0DD4 
0DD6 
00D9 
30DA 
0008 
OOOC 
OOOF 
OOEO 
0DE3 
0DE5 
00E6 
30E8 
OOEB 
OOEO 
OOCll 
OOEF 
3DF2 
OOF  3 
0OF4 
30F5 
OOF  7 
OOFB 

onF  A 

OOFO 
OOFE 
OEOO 
OC  0  I 
)E  32 
0E03 
0E04 
3F35 
0E06 
0FC7 
OFOB 
0E09 
3E)A 
OEOR 
OCOC 
OEOO 
OEOE 
OEOF 
OEIO 
OEtl 
OE  12 
OE  13 
0E14 
3E1S 
OE  16 


7E 
17 

C3   7C  00 
E6  80 
3E  AO 
CA  9C  00 
3E  AO 
CO  FO  OF 
C9 
69 


C3   AI  00 

C)   00  09 

C3  BA  30 

CO  E3  00 
47 

CD  CI  OD 
5F 

E6  80 

CA  OF  OD 


06  OA 
F3  E5  30 
C6  OA 


01 VIT: 
T  WOO  : 


RET 

MVI  E,l 
CALL  LSFT 
MOV  L.C 
OCR  L 
MOV  A.C 
AO  I  110 
MOV  C.A 
MOV  A,H 
CALL  COPY 
MOV  A.C 

sui  no 

MOV  C.A 
MVI  E.2 
MOV    L  ,  C 
OCR  L 
CALL  TLP2 
HOV   L.  C 

mov"a:c 

ADI  12C 
MOV  B.A 
CALL  DADO 
OCR  L 


OCR  L 
ADC  H 
RET 

HOV  L.C 
OCR  L 
XRA  A. 
HOV   H . A 
OCR  E 
RH 

INR  L 
INR  L 
INR  L 
MOV  A  i  H 
RAL 

MOV  M i  A 
OCR  L 
MOV  A.M 
RAL 

HOV  M , A 
OCR  L 
HOV  A , H 
RAL 

HOV   M i A 
OCR  L 
MOV   A  »  M 
RAL 

JMP  TLOOP 
AN  I  2000 
MVI  A, 2400 
JZ  PLSV 
MVI  A, 2550 
CALL  OUTR 
RET 

MOV   L  ,C 
INR  L 
INR  L 
INR  L 
MOV  A.H 
RET 

CALL  GETFX 
MOV  E.A 
HOV  8.L 
INR  B 
MOV  L.C 
MOV  A,C 
AO  I  110 
MOV  C.A 
MOV    A , E 
ANI  200Q 
JZ  DIVIT 
CALL   L  MUL 
MOV  A,C 
MOV  C.L 
HOV  L.A 
MOV    A  ,  H 
CALL  COPY 
HOV  L.C 
INR  L 
JMP  GET  A 
CALL  LOIV 
JMP  F I NUP 
CALL  CTWO 
MOV  B.A 
CALL  GETEX 
MOV   E  ,  A 
ANI  23JQ 
JZ  AODl 
OCP  E 
MOV  M.E 
HOV  A.B 
JMP  INPOP 
INR  E 
JMP  F  I  NI  T 
MVI  E.3770 
(NR  E 
SUI  120 
LOOP 
120 


•►/SERVES  AS  TERM  FOR  OIGO  t  C.V 
;/HULT.    BY    10    (START  WITH  X2) 
;/LEFT   SHIFT    1   =  X2 
;/SAVE  X2    IK  "PESULT" 
;/SFT    TO    TOP  OF  NUMBER 
;/SFT  C   TO  RESULT 

; /NOW  C   SET  RIGHT 

;/SHOW  RAM  TO  RAM  TRANSFER 

;/SAWE   X2  FINALLY 

;/MUST  RESET  C 

:/BACK    TO  NORMAL 


:/GET  X8 

;/SFT   UP   TO  CALL  OAOD 
;/SET  B  TO  X2 
;/T0  X2 

I /AOO  TWO  LOW  WORDS 
;/BACK   UP    TO  OVEPFLOW 
; /GET  IT 

;/NOW  SET   TC  X2  OVERFLOW 
:  /  I  TS    AT  B-l 

;/ADO   WITH  CARRY   -   CARRY    WAS  P 
; / A L L    DONE,    RETURN  OVERFLOW  IN 
;/SET  PTP   FOR  LEFT   SHIFT  OF  NU 
;/BACK   UP    TO  OVERFLOW 
;/0VERFLOW  =  O   1ST   T I  HE 
;/SAVE  OVERFLOW 
:/r£ST   FOP.  DONE 
;/OONF  WHEN  F  MINUS 
;/MOVE    TO  LOW 


;/PUT  BACK 
;/.«.TP   -    ALL  OONE 
; /GET  LOW 
:/SHlFT  LEFT  1 
;/RES  TORE  IT 
;/BACK  UP  TO  HIGH 
;  /GET  HIGH 

;/SHlFT    IT    LEFT   KITH  CAR P Y 

;/PUT    IT  BACK 

;/tJACK    UP    TO  OVERFLOW 

;/<;ft  OVEPFLOW 

; / SH I F  T    IT  LEFT 

;/G0  FOR  MORF 

;  /GET  S  I  GIS  BIT 

; /SPACE    I NS T F AO  OF  PLUS 

;/TEST    FOP  ♦ 

; /NEGATIVE 

:/OUTPUT  SIGN 


; 

I/FFTCH   INTC;  A 
;/OCNE 

;/MUL   OR  OIV  DEPENDING  DN  EXP 

;/SAVE    DECIMAL  EXP 

:/SET   UP    TO  MULT    OR  OIV 

;/NHW  BOP    POINTER  SFT 

;/L   PCINTS  TO  NUMSFR    TO  CONVFP. 

;/POINT    C    AT    "RESULT"  AREA 

;/lN  SCPATCH 

;/NOW  C   SET  RIGHT 

;/NJW    TFST   FUR  MUL 

;/TFST  HE  GAT  I VE  DEC.  EXP. 

;/IF  EX!'    IS    ^   THEN  OIVIOE 

:  /  H  UL  T  . 

;/SAVE  LOC.   CF  PESULT 

;/C  =  LOC   UF  NL:M6ER    IIT  WAS  OF  S I 

;/SET  L   TO  LOC.  OF   PC SUTL 

;/SHt)'ri    RA*   TO   RAM  TRANSFER 

;/MUVt    RESULT   TO  NUMBER 

;  /NftW  Gt'1    0ECIM4L  EXP 


;/CONVEPT    TO   2  OIGITS 

;/SAVF    ONES  DIGIT 

;/GET   ObClMAL  EXP 

;/SAVE   A  CnPY 

;/TFST   FOR  NEGATIVE 

;/BUHP   EXP   BY    1   SINCE    2  OIGITS 

; / OCC R E MF N T  NEGATIVF   EXP  SINCE 

;  /R  E  S  TORE   EXP  V»  I  TH  NEW  VALUE 

;/NOW  DO   2ND  OIGIT 

I /GO  OUT    2N0  AND  RFST    Ffl  01GI' 

;/C0MPFNSATE    FCR   7  DIGITS 


;/CCNVtRT    2   OIGIT    BIN  TU  I 
;  /ADD   UP   TENS  CIGIT 
;/SUBTRACT  10 
:  /  T  I  I  L    NEGATIVE  RESULT 
-,/PfSTORE  ONES  OIGIT 
;/S.\VF  ONES  DIGIT 
"./GET    TENS  DIGIT 
;/r:uTouT  it 

;/SET  A   TO  2NU  DIGIT 
;/COPY  Ffl  Cm  lo?N  Tn  PAM 
;/SET  C   T.O  PLACF   TO  PUT 


;  / I T s  RESET 

;/SiVt  RAM 
;/SFT 
;  /  r.  F  T 


;/itS  r  r>:F  ff  ases  l 

I/SLT    TO   OFST 1  NATION  RAM 
;/SAVF   4TH   WGRO     IN  B 
i /SET    TH  OFST  INAT  ION 

;/SAvr  f- 1 p ^i  woro 


<:o 


AOI 

MOV    .  . 
MOV    A,  E 
CALL  OIGO 
HOV    A,  B 

RET 

MOV  A.C 
AOI  5 
MOV  C.A 

MVI    A,  (TEN  5/? 56) 

CALL  COPY 

MOV  A.C 

SUI  5 

MOV  C,A 

RET 

MOV  B.H 
MOV  H . A 
MOV  A.f 
INR  L 
MOV    0,  M 
INR  L 
MOV    F  ,  M 
INP  L 
MOV  L , M 
MOV    Hi  f$ 
MOV  B.L 
MOV  L.C 
MOV   M  »  A 
INR  L 
HOV  A , M 
MHV    M,  0 
INR  L 
MOV   H  ,  F 
INR  L 
MOV    M,  B 
RET 


SCRATCH  MAP  FDR  I/O  CONVERSION  ROUTINES 


IN    A    I  INPUT  S 


OVFRFLOW 
HIGH   NUMBER  -   MANTl SSA 
LOW  f.UMBFR 
CHARACTEP ISTIC 

DECIMAL    FX»ONEXT    (SIGN  CMAG.I 

TFN«"*N 

T  E  N  *  *  N 

TEN«*N 

RESULT  OF  MULT  L  OIV 
A NO   TEMP  FOP  X? 


•BFGhJ    INPUT*  •  * 


////   4    1/2   OIGIT    INPUT  ROUTINE 


0E21 
0E22 
OE23 
0E25 
0E26 
0C27 


I  NPUT  :      MOV  R.L 
MOV  A,C 
AOI 
HOV 
MOV 
INR 


170 


;/SAVF  AODPFSS  WHERE  DATA 
;/IN  SCRATCH 

;/COMPUTE    LLC.    ]\  SCRATCH 


FEBRUARY  1977 


INTERFACE  AGE  107 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


3E2B 
0E29 
0E2C 
0E2D 
0E2E 
JE31 
0E33 
0E36 
3E3B 
0E3B 
0E30 
0E40 
0E43 
3E46 
0E4B 
0E49 
i)E4B 
0E4C 

0E4n 

0E4E 
0E4F 
0E52 
0E54 
0E55 
0E56 
Of.  5  7 
0659 
0F5C 
0E5F 
0E61 
0E63 
0E66 
)fc69 
0E6B 
0E6C 
0E6F 
0E71 
3E74 
0E77 
0F79 
3E7A 
OE  70 
OEBO 
0EB2 
0EB3 
0EB6 
0EB7 
OE  BR 
0EB9 
OEBB 
OEBE 
OEBF 
0E90 
0E91 
0E92 
0E93 
OE'06 
0F97 
3E9B 
0E9B 
0E9E 
OEAI 
0EA4 
0EA7 
0EA9 
OEAC 
OE  AD 
OE  AE 
OE  AF 
OEQO 
0EB2 
0EB3 
0EB4 
0EB5 
0EB6 
0EB7 
OEBA 
OEBC 
OEBD 
OEBE 
OEBF 
DECO 
3EC1 
0EC3 
0EC4 
0EC5 
0EC6 
0EC9 
OECC 
OECF 
OEOI 


77 

CO  CC  OE 
FE  FE 
CA  86  OE 
FE    1  5 
C  A  9  B  OE 
FE  FO 
C2   IF  OF 
CD   15  OF 
CD  CI  00 
E6  7F 
5F 

E6  40 


77 

2F  17 

CD  F  4  00 

CO  CI  OD 

E6  3F 

FE  05 

FA  6F  OE 

CD  A6  00 

06  05 
77 

C3  5F  3E 

2E  IB 

CO  F  4  00 

CD  C  I  30 

E6  3F 
B7 

CA  19  3F 

CD  A6  OD 

D6  0  1 


INR  C 

CALL  7R0IT 
INR  L 
MDV  M  i  A 
CALL  GMJM 
CP!  376Q 
JZ  DtCPT 
CI  25Q 
JZ  INEXP 
CPI  3600 
JN2  E^P 

call  fltscn 
call  cftex 

AN!  177C 


;/BY  2 

;/ZFPC  NUMRER 

I/ANO  ZF"G 

I/DECIMAL  EXPONENT 

I/CET    INTEGFR  PA°T  OF  NUM 

; /TERM=.? 

;/yfs 

;/TESt  FOR  F 

;/yeS  -  handlf  exp 

;/TbST   FOR   SPACE   TERM  I240R-26 

5/NOT   LEGAL  TEPM 

! / F L n A T  *    AND   SIGN  IT 


MOV 
ANI 
RIC 
ORA 
MOV 
MOV 
JZ 
MVI 
SUB 
ADD 
MDV 
MVI 


E  »  A 
100Q 


H  i  A 


TRYTN: 
I  NT  1  : 


70 
7B 

C3  36  OE 
CO   15  OF 

co  19  or 

CO  30  OF 

CO  CC  OE 

FE  FO 

C2  IF  OE 
69 
2C 


C6  OD 
6F 
6F 
7C 

CO  02  OE 
C3  43  OE 
C!)  FA  OF 
FE  AO 
CA  CC  OE 


..  L.UFN5 
CALL  CCPT 
CALL  GET EX 
ANI  770 
CPI  50 
JM  TRYTN 
CALL  MCPD 
SUI  5Q 
MOV  M i A 
JMP  INT5 
MVI   L . ITEN 
CALL  CCPT 
CALL  GETEX 
ANI  77Q 
ORA  A 
JZ  SAVEN 
CALL  MCRD 
SUI  1C 

MOV    M  r  A 
JMP  INT1 
MOV  L,C 
OCR  L 
OCR  L 
MVI  M.O 
CALL  EP1 
MOV  E  t  A 
MOV  L.C 
OCR  L 
DC  R  L 
MnV   B,  M 
CALl  GETEX 
MOV  M,B 
MOV   A , E 
JMP  TSTEX 
CALL  FLTSGM 
CALL  SAVEN 
CALL  ZROIT 
CALL  GMJM 
CPI  360Q 
JNZ  ERR 
MOV  L.C 
INR  L 
INP.  L 
MOV  A  t  M 
ANI  37Q 
MOV  B,A 
INR  L 
MOV    A i M 
ORA  A 
MOV  A i B 
JH  USEIT 
MVI  A,OQ 
SUB  B 
INR  L 
ADD  M 
MOV  H, A 
MOV  A,C 
AOI  15Q 
MOV  L,  A 
MOV  L.M 
MOV   At  H 
CALL  COPY 
JMP  SCALE 
CALL  INP 
CPI  2400 
JZ  GNUH 


J/SAVF  COPY 
I/GFT   SIGN  OF  EXP 
; /INTO   SIGN  BIT 
;/SET  FLOPS 
I/SAVE  SIGN 
I/GFT  EXP  BACK 
J/JMP    IS  ♦ 
I/MAKF    MINUS  ♦ 
;/NOW   ITS  + 
I/SIGN  NUM3EP 
; /SAVE  EXP   (SIGN  t  MAG.) 
AND  3770)      ;/TRY  MURO  WITH   10**5  FIR 
; / TRANSFER  TO  RAM 
5 /GET  DECIMAL  EXP 
5/CET  MAG.  Of  EXP 
I/TEST  FOR  USE  OF  10**5 
;/WUNT  GO  -  TRY  10 
I/WILL  Gil  SO  00  IT 
-./MAG  =  MAG  -5 
;/UPOATF  DEC.  EXP   IN  MFM 
;/GM  TRY  A^AIn 
A\tO   3770)      ;  /PUT    TEN    IN  RAM 

/SIT  UP  FOR  LOOP 
/G  FT  MAGNITUDE 
/TEST  F!OP  0 

/DONE,  MOVE  NUM  OUT  ANU  GET  U 
/NOT   Dt.Nf  -  DG  10 

/rxp  *  Exp  -i 

/UPOATE  MEM 
/TP Y  AGAIN 
/ZERO  DIGIT  COUNT 
/SINCE    ITS  NECESSARY 
/TO  CUMPUTF  EXP. 
/ZEROED 

/ GNUM    IN  MIUOLE 
/SAVE  TERMINATOR 
/MOVE  DIGIT  COUNT    TO  EXP 
/ BACK  UP  TO  DIGIT  COUNT 

/ GOT   DIGIT  COUNT 
/ S F  T  L   TO   DEC.  FXP 
/PUT  EXP 
/TFRK    BACK    TO  A 
/TEST   FOR  E+OR-XX 
/FLOAT   ANO  SIGN  NUMBEP 
/SAVE  NUHBFP    IN    ID   Tf MP 
/ZERO  OUT  NUM.  FOR  INPUTTING 
/NOW    INPUT  EXPONENT 
/TEST  FOR  SPACE  TERM. 
/NOT   LEGAL  -  TRY  AGAIN 
/GET  EXP  OUT  CF  MEM 
/•••TP 

/EXP  LIM I  TED  TO   5  BI TS 
/ GCT  LOWEST  8   Bl  TS 
/GET  GOOD  BITS 
/SAVE  THEM 
/GET   SIGN  OF  EXP 
/INTO  A 
/SET  FLOPS 

/INCASE  NOTHING  TO  DO 
/  IF  NEC.  USE  AS  + 
/IF    ♦  MAKE  - 


/0-X 


-  X 


FXP 


/POINT  AT  EXP 
/GET  REAL  OtC. 
/PUT    IN  MEM 
/NOW  GET   NUMflEP  BACK 
/GET  ADD  OF  L 
/L   POINTS   TO   L   OF  NUMBER 
/NOW  L   POINTS  TC  NUMBER 
/P AM   TO  RAM  CDPY 
/COPY    IT  BACK 
/NOW   ADJUST   FOR  EXP 
/GET  A  CHAR 

/IGNORE  LEAOING  SPACES 


LOOKING  FOR-? 

•  IMSAI 

•  Polymorphic  Systems 

•  Technical  Design  Labs  (TDL) 

FOR  YOUR  IMSAI /ALTAIR 

How  About... 

•  A  Video  Interface  which  provides  16  x  64 
characters,  upper  and  lower  case,  graphics 
and  a  parallel  input  port  for  a  keyboard,  all 
on  one  board!! 

•  16kRAMon  ONE  CARD.  Super  low 
power  —  500  ma  for  16k!!  Super  fast 
access  —  200  ns! !  Start  with  only  4k,  8k 
or  12k  then  expand  to  16k  later. 

•  LOW,  LOW  PRICES  on  all  products. 

Write  or  call  us  for  information  and  complete 
price  list. 

YOUR  MAILORDER  COMPUTER  SHOP: 
Call:  (315)  637-6208 

computer 
cmcfpruer 

P.O.  Box  71  •  Fayetteville,  N.Y.  13066 


0ED4 
0ED6 
0E09 
OEOA 
0ED8 
OEDC 

8e8R 

0EE2 
0EE4 
0EE7 
0CE9 
OEEA 
OEEC 
OEEO 
OE  EE 
0EF1 
0EF2 
0EF5 

S§F7 
OEFA 
OEFB 
OEFC 
OEFO 
OEFE 
OFFF 
OFOO 
QF01 
0F03 
0F04 
0F05 
0F06 
OFOB 
0F09 
OFOA 
OFOB 
OFOC 
OFOO 
OFOE 
OFOF 
OF  12 
OF  15 
OF  16 
OF  19 
OF  1A 
OF  1C 
0F10 
OFIE 
)F  IF 
0F20 
OF  2  1 
0F22 
0F23 
OF  24 
OF  27 
0F23 
DF29 
0F2A 
0F2B 
0F2D 
0F2E 
0F2F 
OF  30 
OF  31 
>F32 
0F33 
0F34 
0F35 
0F36 
3T  37 
0F3B 
OF  39 
OODB 


0F3A 
0F3B 
0T3C 
0F3D 
0F3E 
0F3F 

0F40 
0F41 
0f44 
3F45 
0F46 


OF  4  7 
OF  48 
0F49 
0F4A 
0F4C 

on,o 
3F4E 
0E4F 
0F50 
0F51 
0F5? 
OF53 
OF  54 
0F55 
0F56 
0F57 
01  5B 
0F59 
Of  5A 
3F5P 
0F5C 
0F5F 
)F6  ) 
0F61 
0F62 
0F63 
Off, 
)F05 
0F66 


0F67 
0F6B 
0F6A 
OF  6B 
Or6E 
0L6F 

Of  70 
0F71 
0F72 
OF  73 
OF  75 
Of  77 
OF  70 
0F79 
JF  7A 
OF  7R 
0F7C 
0F7D 
0F7F 
3T7r 
OFBO 
OF  83 
0  F  84 
0F8S 
0FB6 
0F87 
OF  88 
JFB9 
OF  8A 
0F8B 
3F8C 
OF  60 
OF  RE 
JF8F 
OF  9  0 
0F11 
0F92 
0F93 

OFCO 
OFCO 
3FI30 
0F03 
0F06 
0F09 
OFDC 
OFOF 
0FE2 
0FE5 
JF  E8 
OFEB 
OFEE 
OFF  I 
OFF  4 
0FF7 


2C 
2C 
2C 

36  80 
C3  CC  OE 
FE  AB 
CA  CC  OE 
D6  80 
FB 

FE  OA 

FO 

5F 

CO  2A  OF 
73 

CO  51  OD 


21°E 

CE  00 


CI  FA  OF 

W  67  0E 

C3  D5  OA 


CPI  255Q 

JNZ  TRYP 

HOV  LtC 

INP  L 

INR  L 

INR  L 

MVI  H.200Q 

JMP  GNUM 

CPI  2530 

JZ  GNUH 

SUI  2600 
RH 

CPI  120 
RP 

MOV  E  t  A 
CALL  GETN 

HOV  M,F 
CALL  MULTT 

ORA  A 
RNZ 

CALL  GETN 

MOV  L.C 

INR  L 

INR  L 

ADO  M 

MOV  M,  A 

OCR  L 

HOV  A  i  H 

A  CI  00 

MOV  M,  A 

DCR  L 

HCV  A  f  H 

AC  I  OQ 

HOV  H»  A 
RC 

OCR  L 

DCR  L 

HOV  B,  M 

INR  B 

HOV  H.  B 
CALL  INP 

JMP  TSTN 
MOV  LtC 
JMP  FLO 

MDV  A.C 

AOI  150 

HOV  L,  A 

HOV  E.H 

HOV  L i E 

INR  L 

HOV  M,C 

HOV  L  r  C 

MOV  C.E 

HOV  A,  H 

Call  ccpy 

hov  c,a 

ORA  A 
RET 

MOV  A,C 

ADI  160 

HOV  L»  A 

HOV  A.P 
RET 

MOV  L.C 

XRA  A 

HOV  M  t  A 

INR  L 

MOV  Mr  A 

INR  L 

HOV  M.  A 

I  MR  L 

MOV  H,  A 
RET 
FOU 


I/TEST   FOR  - 
I/NOT  H1NUS 
; /MINUS   SO  SET  SIGN 
;/IN  CHAR  LOC. 


I/SET  -  SIGN 


;/ IGNORE  * 

;/STRlP  ASCI  I 
;  /RETURN    IF  TERM 
:/TEST   FOR  NUHBER 
;/ ILLEGAL 
I/SAVE  DIGIT 

;/LOC.  OF  OIGIT   STORAGE  TO  L 

I/SAVE  OIGIT 

;/MULT  NUMBER  BY  10 

;/TEST  FOR  TOO  MANY  DIGITS 

;/T00   MANY  DIGITS 

; /GET  DIG  I T 

;/SET  l  rn  number 

; TP 

5/AOD   IN  THE  DIGIT 
;/PUT  RESULT  BACK 
;/NOW  00  HIGH 

; /GET    HIGH   TO  ADO    IN  CARRY 
5/AOO    IN  CARRY 
5/UPDATE  HIGH 
;/***TP  EXTENSION 

;/ADO    IN  CARRY 
;/***TP  ALL  DONE 
;/OVERFLOW  ERROR 
;/8UHP  OIGIT  COUNT  NOW 

; / GET  OIGIT  COUNT 
;/BUHP  OIGIT  COUNT 
: /UPDATE    DIGIT  COUNT 
I/GET    NEXT  CHAR 
I/HUST  BE   NUM.   OR  TERH 

; POINT  L  AT   NUMBER   TO  FLOAT 

;G0  FLOAT  IT 
I/PUT  NUHBER    IN  ID 
:  /  GET    ADO   OF  L 

; /GET  L  OF  RESULT 

;/POINT   L    AT  (D 

5/SFT  TO  2ND  WORO  TO   SAVE  C 

I/SAVE  C    IN    (LI    +1   SINCE    IT  WI 

;/SET  UP  TO  CALL  COPY 

;  /.Si  )W  LtC  SET 

;/PAM  TO  RAM  COPY 

;/COPY  TO  L 

;/ID+l   RETURNED  HERE   SO   SET  A 
; HAKE    SURE  CY=0  (NO  E*R 
; /NOW   EVFRYTHING  HUNK Y— DORRY 
I /GET  DIGIT 


IN  SCRATCH 


I/LAST  LOC. 
;/PUT    IN  I 
5 /GET  DIGIT 

;/ZERO  NUHBER 


;/NOw  SET    SIGN  TO 


;/UCNr 

READ  FOU  333Q  IODT  READ  RCUT  INE 

;    CONTAIN  LOW   BYTE    OF  TWO  BYTE   VALUE.  RETURNS  CY=1  IT 
;   BOfU,  CY=  3  IF  BC<DE  :   Z=  1   IF   RC  =0E . 
DCCMP:  HOV         A  ,  E 

cmp  r. 

RNZ 

HOV  A,D 
CMP  b 
RET 

;    ROUTINE   TD    INPUT    CHAR    FROH  TTY 

Chap  2:        push  b 

CALL  R  E  AC 

HOV  A,  B 

POP  8 
RFT 

:  routine  to  adjust  values  of  bin,  fgrwap._ 

:    L  INF    LENGTH  flF  SOURCE   LINE.      PASSED  ADD  OF   TEMP  VARIARL 

CONTAINING   ADD  OF   SOURCF  LINT. 


; INPUT  FROH  COT 
;GFT  CHAR.   TO  A  REG. 
;  RE  S 1  ORE  8,C 

P  NT  .  ANO 


PTVA1  : 


PUSH 
PUSH 
PUSH 
MVI 
MOV 
I  NP 
MOV 
I  NR 
PUSH 
XTHL 
HOV 
I  NX 
MOV 
I  NX 
XTHL 
HOV 
I  NP 
MOV 
INP 
DCR 

XTHL 
HI!V 
POP 
MOV 

POP 
PO" 
POP 
RET 
TO  C 

flpAusV 


PSW 


ANC  (1UTPUT. 


POP  PSw 
R  FT 

:    MULIP'L  ICAT1DN  ROUTINE    I  AnD.  VALUES) 

MULT:  MOV  E.M 

OCX  H 

HCV  D , r 

HVI  M,1H 


MOV 
MOV 
RAP 

nr.R 

H^V 


IF 
47 

C3   78  OF 


C3  BO  0^ 

C3  5C  09 

C3  5F  OA 

C3  00  09 

C3  60  09 

C3  CE  OA 

C3  57  1A 

C3  02  OE 

C3  9  A  OC 

8  Vo  3f 

C3  4  7  OF 

C3  3A  OF 

T3  67  OF 

C3  40  OF 


■ 

MDV 
I  NX 
MOV 
ADC 
MUV 
INX 
MOV 
RAP 
HOV 
MOV 
RAR 
MOV 
JMP 


B,  A 
TOP 


;  L I NK AGES   TU  FLOATING  POINT  RCUTIMES 


JHt> 
J  Mo 

JMP 

JMP 
JMP 
J  MP 
JMP 
J  MP 
JMP 
JMP 


7  7  1  51 
WZEP 
L  AlOD 
L"UL 
LDIV 
LSUB 
OFXL 
LMCM 
COPY 
CVPT 
I  NPUT 
MULT 
PTVAl 
OCOMP 
MCHK 
CMAR2 


NU  PROGRAM  ERRORS 


Branch  to  page  120 


108  INTERFACE  AGE 


CIRCLE  INQUIRY  NO.  46 


FEBRUARY  1977 


DIODES/ZENERS 


1N914 

100v 

10mA 

.05 

1 N4004 

400v 

1 A 

.08 

1N4005 

600v 

1 A 

.08 

1 N4007 

1000v 

1A 

.15 

1N4148 

75v 

10mA 

.03 

1N753A 

6.2v 

z 

.25 

1N758A 

10v 

z 

.25 

1N759A 

12v 

z 

.25 

1N4733 

5.1v 

z 

.25 

1N5243 

13v 

z 

.25 

1N5244B 

14v 

z 

.25 

1N5245B 

15v 

z 

.25 

SOCKETS/BRIDGES 


8-pin 

pcb 

.25 

WW 

.45 

14-pin 

pcb 

.25 

WW 

.40 

16-pin 

pcb 

.25 

WW 

.40 

18-pin 

pcb 

.25 

WW 

.75 

22-pin 

pcb 

.45 

WW 

.75 

24-pin 

pcb 

.35 

WW 

1.25 

28-pin 

pcb 

.35 

WW 

1.45 

40-pin 

pcb 

.50 

WW 

1.95 

Molex  pins  .01  To-3  Sockets  .25 
2  Amp  Bridge  100-prv  1.20 
25  Amp  Bridge    200-prv  2.50 


TRANSISTORS,  LEDS,  etc. 


2N2222 

NPN 

.10 

2N2907 

PNP 

.15 

2N3740 

PNP  1A 

60v 

.25 

2N3906 

PNP 

JO 

2N3055 

NPN  15A 

60v 

.50 

LED  Green,  Red,  Clear 

.15 

D.L.  747 

7  seg  5/8"  high 

1.95 

XAN72 

7  seg  corn-anode 

1.50 

FND  359 

Red    7  seg  corn-cathode 

1.00 

C  MOS 


-   T    T    L  - 


4000 
4001 
4002 
4004 
4006 
4007 
4008 
4009 
4010 
4011 
4012 
4013 
4014 
4015 
4016 
4017 
4018 
4019 
4020 
4021 
4022 
4023 
4024 
4025 
4026 
4027 
4028 
4030 
4033 
4034 
4035 
4040 
4042 
4043 
4044 
4046 
4049 
4050 
4066 
4069 
4071 
4082 


.20 
.20 
.25 
4.95 
1.20 
.40 
1.20 
.25 
.45 
.20 
.25 
.40 
1.10 
.95 
.35 
1.10 
1.10 
.70 
.85 
1.35 
1.15 
.25 
.95 
.35 
1.95 
.50 
.95 
.45 
1.95 
2.45 
1.25 
1.35 
.95 
1.25 
.95 
1.50 
.80 
.70 
1.35 
.40 
.35 
.45 


7400 
7401 
7402 
7403 
7404 
7405 
7406 
7407 
7408 
7409 
7410 
7411 
7412 
7413 
7414 
7416 
7417 
7420 
7426 
7427 
7430 
7432 
7437 
7438 
7440 
7441 
7442 
7443 
7444 
7445 
7446 
7447 
7448 
7450 
7451 
7453 
7454 
7460 
7470 
7472 
7473 


.15 
.15 
.20 
.25 
.15 
.25 
.45 
.55 
.25 
.15 
.15 
.25 
.30 
.65 

1.10 
.25 
.50 
.15 
.40 
.45 
.15 
.45 
.45 
.35 
.25 

1.15 
.65 
.95 
.95 
.95 
.95 
.95 

1.20 
.25 
.25 
.25 
.25 
.40 
.45 
.45 
.35 


7474 

7475 

7476 

7480 

7483 

7485 

7486 

7489 

7490 

7491 

7492 

7493 

7494 

7495 

7496 

74100 

74107 

74121 

74122 

74123 

74125 

74132 

74141 

74150 

74151 

74153 

74154 

74156 

74157 

74161 

74163 

74164 

74165 

74166 

74175 

74176 

74180 

74181 

74182 

74190 

74192 


.40 
.45 
.20 
.65 
1.00 
1.05 
.40 
2.50 
.40 
1.15 
.95 
.45 
1.25 
.85 
.95 
1.85 
.45 
.40 
.55 
.55 
.45 
1.35 
1.30 
1.00 
.95 
.95 
.75 
1.15 
.75 
1.25 
1.25 
.95 
1.50 
1.35 
.95 
1.25 
.85 
3.25 
.95 
1.75 
1.65 


74193 
74194 
74195 
74196 
74197 
74198 
74367 


751 08A 
75110 
75491 
75492 

74H00 

74H01 

74H04 

74H05 

74H15 

74H20 

74H22 

74H30 

74H40 

74H52 

74H53J 

74H55 

74H72 

74H101 

74H103 

74H106 


74L00 
74L02 
74L03 
74L10 
74L30 
74L47 
74L75 


.85 
1.45 

.95 
1.50 
1.25 
2.35 

.85 


.35 
.35 
.50 
.50 

.25 
.25 
.25 
.25 
.30 
.30 
.40 
.25 
.25 
.15 
.25 
.25 
.55 
.75 
.75 
.95 


.35 
.35 
.30 
.35 
.45 
1.95 
.55 


74S00 

74S02 

74S03 

74S10 

74S11 

74S20 

74S40 

74S51 

74S64 

74S74 

74S112 

74S133 

74S140 

74S151A 

74S153 

74S158 

74S194 

74S257  (8123) 

74LS00 
74LS01 
74LS02 
74LS04 
74LS08 
74LS09 
74LS10 
74LS11 
74LS20 
74LS21 
74LS22 
74LS32 
74LS37 
74LS40 
74LS42 
74LS52 
74LS74 
74LS90 
74LS93 
74LS107 
74LS153 
74LS157 
74LS164 
74LS368 


.55 
.55 
.50 
.45 
.45 
.50 
.30 
.45 
.30 
.50 

1.50 
.45 
.75 
.45 
.45 
.45 

1.50 
.25 

.45 
.45 
.45 
.55 
.45 
.45 
.45 
.45 
.50 
.25 
.25 
.55 
.40 
.55 
1.75 
1.45 
.95 
1.30 
1.00 
.95 
1.20 
.85 
1.90 
.70 


9000  SERIES 


9301 

1.00 

9309 

.45 

9602 

1.50 

MEMORY, 

CLOCKS 

74S188  (8223) 

3.00 

8080 

26.50 

MM1702A 

10.50 

MM5314 

3.50 

MM5316 

3.95 

2102-1 

1.75 

2102-L1 

1.95 

TR  1602A 

6.95 

LINEARS,  REGULATORS,  etc. 


MCT2 

.95 

LM320K5 

1.65 

LM340T-24 

1.25 

8038 

3.95 

LM320K12 

1.65 

LM340K-12 

2.15 

LM201AH 

.75 

LM320T12 

1.65 

LM340K-15 

1.65 

LM301AH 

.25 

LM320T15 

1.65 

LM340K-18 

1.65 

LM308AH 

1.00 

LM339 

1.65 

LM340K-24 

1.25 

LM309H 

.65 

7805(340T-5) 

1.00 

LM373 

1.95 

LM309K 

.90 

LM340T-12 

1.25 

LM380 

.95 

LM310 

1.15 

LM340T-15 

1.25 

LM709 

.30 

LM311 

1.35 

LM340T-18 

1.65 

LM711 

.45 

INTEGRATED  CIRCUITS  UNLIMITED 

7889  Clairemont  Mesa  Blvd.  •  San  Diego,  CA  92111  •  (714)  278-4394 

All  orders  shipped  prepaid  No  minimum 

Open  accounts  invited  COD  orders  accepted 

Discounts  available  at  OEM  Quantities 

California  Residents  add  6%  Sales  Tax 
24  Hour  Phone  (714)  278-4394  Master  Charge  /  BankAmericard 


LM723 

LM725 

LM739 

LM741 

LM747 

LM1307 

LM1458 

LM3900 

LM75451 

NE555 

NE556 

NE565 

NE566 

NE567 

SN72720 

SN72820 


8-14 


.45 
1.95 
1.50 
.25 
1.10 
1.25 
.95 
.65 
.65 
.50 
1.10 
.95 
1.75 
1.35 
.35 
.35 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  59 


INTERFACE  AGE  109 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


AMI'S  EVK  SERIES 

MICROCOMPUTER  PROTOTYPING  BOARDS 


By  Robert  A.  Stevens 


INTRODUCTION 


jym*S6BPP  PROTOTYPING  ^ 


This  article  is  Part  Three  of  a  series  on  the  EVK 
Microcomputer  hardware,  firmware  and  supporting 
oftware.  This  month's  subject  covers  the  ROM  resi- 
ent  Prototyping  TTY  MONITOR  Operating  System, 
PROTO. 


PROTD  SOFTWARE 

The  resident  PROTO  software  program  includes  the 
ifollowing  commands: 

L  LOAD  HEX  paper  tape  program  into  RAM  memory 
P  PUNCH  HEX  paper  tape  from  memory 
S  SET  (write)  specified  data  string  characters  into 
consecutive  memory  locations 

D  DISPLAY  (prints)  in  HEX  to  TTY  contents  of 
specified  memory  locations 

G  GO  TO  user  program  at  specified  address  and  ex- 
ecute 

R  PRINTS  contents  of  MPU  register  (C,  B,  A,  X,  P  & 
S)  on  TTY  at  time  the  user's  program  was  last 
interrupted 

B  BURN  (copies)  the  contents  of  specified  memory 
into  the  EPROM  in  the  programming  socket 

V  VERIFY  (compares)  contents  of  specified  memory 
with  EPROM  or  ROM  in  the  programming  socket 

I  INPUT  (copies)  contents  of  the  EPROM  or  ROM  in 
the  programming  socket  into  specified  RAM 
memory  locations 

M  MOVE  (copies)  contents  of  memory  block  from 
specified  location  to  designated  RAM  memory 
location 

E  END  of  transmission  (EOT)  character  terminates 
the  end  of  punch  paper  tape  record  and  punches 
EOT  on  paper  tape. 

The  commands  will  operate  on  a  single  character 
P  CODE  plus  address  parameters  from  the  TTY 

keyboard, 

PROTO  COMMAND  DESCRIPTIONS 

The  EVK  300  board  will  be  supplied  with  a  proto- 
typing operating  system  program  (PROTO).  The 
program  resides  in  ROM  with  a  starting  address  of 
F000.  The  various  routines  within  PROTO  are  called  by 
entering  via  the  TTY  keyboard  one  of  the  commands 
described  in  the  following  paragraphs.  A  command 
consists  of  one  character  command  identifier  followed 
by  additional  parameters,  if  needed,  separated  by 
blanks  or  commas.  All  commands  end  with  a  carriage 


110  INTERFACE  AGE 


FEBRUARY  1977 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


Good  Software  and  Support  are  to  a 
computer  as  the  driver  is  to  his  car. 
One  without  the  other  and  you  have 
a  magnificent  paperweight. 


return.  Since  no  action  is  taken  before  the  carriage 
return,  an  input  line  may  be  deleted  by  the  use  of  the 
TTY  ESCAPE  key. 

L,  ADDL,  ADDH,  OFFSET 

The  Load  tape  command  loads  data  from  a  hex 
formatted  tape  (see  paragraph  on  6800  HEX  tape  for- 
mat at  end  of  article)  into  the  user's  memory  between 
ADDL  and  ADDH,  inclusive.  The  OFFSET  is  added  to 
the  memory  address  specified  on  the  tape  to  form  the 
actual  memory  starting  address  for  the  data  stored.  If  a 
byte  to  be  stored  into  memory  has  an  address  outside 
of  the  range  ADDL,  ADDH,  it  is  not  entered  into 
memory,  but  a  Delete  character  (H'FF)  is  transmitted 
to  the  terminal. 

Example:  L  0100  02FF  FFFA 

The  address  range  in  the  L  command  is  optional, 
and  if  omitted  is  assumed  to  be  the  full  range  of 
memory  (0000-FFFF).  The  offset  parameter  is  also  op- 
tional, and  if  omitted  is  assumed  to  be  zero  (0000). 
Thus  the  L  command  with  no  parameters  loads  the 
tape  into  the  memory  locations  specified  on  the  tape 
with  no  offset.  The  offset  value  in  the  L  command  is  a 
two's  complement  signed  number,  entered  in  unsigned 
hexadecimal.  For  example,  an  offset  of  —6  is  entered 
as  FFFA. 

If  an  attempt  is  made  to  load  non-existent  memory, 
or  ROM,  the  loading  operation  will  terminate,  typing 
out  the  address  and  the  message  "BAD  ADR." 

In  operating  the  Load  command,  PROTO  turns  on 
the  tape  reader  and  scans  the  tape  for  the  first  ASCII 
"S,"  which  indicates  start  of  record.  It  is  not  necessary 
to  position  the  tape  at  the  first  record  of  a  tape  file 
since  each  record  contains  its  own  starting  address. 

PROTO  will  load  data  records  until  it  encounters  an 
end  of  file  (EOF)  record  or  a  tape  error  (Check  Sum  or 
illegal  character).  When  PROTO  reads  a  header  record 
(start  of  record  and  address),  it  translates  the  header 
into  ASCII  characters  and  prints  the  result.  The  Check 
Sum  is  the  binary  sum  of  all  characters  in  the  block. 

PROTO  does  not  list  the  tape  contents  as  the  tape  is 
being  read. 

When  PROTO  encounters  an  end  of  file  record  or  a 
tape  error,  it  turns  off  the  reader  and  prints  "EOF"  or 
"CKSM  ERR"  respectively. 

P,  ADDL  ADDH,  OFFSET 

The  Punch  hex  format  command  causes  PROTO  to 
punch  on  the  TTY  paper  tape  the  contents  of  memory 
between  ADDL  and  ADDH,  inclusive.  Each  record  is 


punched  with  a  four-digit  hex  address  of  the  starting 
byte  of  the  record.  This  address  is  derived  from  the 
memory  address  of  the  byte  being  punched,  plus  the 
offset  value,  OFFSET.  The  offset  is  optional,  and  if 
omitted  is  assumed  to  be  zero. 

All  data  records  are  punched  in  hex  format.  Records 
using  this  command  (except  the  last  record)  contain  1  6 
bytes  of  data  plus  the  start  code,  byte  count,  address, 
and  the  checksum. 

The  P  command  does  not  cause  an  EOF  record  to  be 
punched  so  that  several  disjoint  blocks  of  memory  can 
be  combined  on  one  tape  file. 

Example:  P  F000  F07F  0F00 

S,  ADDR,  BYTE1,  BYTE2,  ,  BYTEN 

The  Set  memory  command  writes  the  8-bit  data 
words  specified  by  BYTE1  to  BYTEN  into  consecutive 
memory  locations  starting  at  ADD. 

If  ADD  has  more  than  4  (hexadecimal)  characters  or 
if  any  of  the  data  bytes  have  more  than  2  characters 
each,  only  the  last  4  or  2  characters  are  used  respec- 
tively. 

Example:S  0000  86  05  97  28 

Memory  locations  at  0000  through  0003  are  loaded 
as  shown. 

D,  ADDL  ADDH 

The  Display  memory  command  prints  the  contents 
of  memory  between  ADDL  and  ADDH,  inclusive,  in 
hex  format.  Up  to  sixteen  bytes  per  line  are  printed, 
preceded  by  the  hexadecimal  address  of  the  first  byte 
of  the  line.  A  carriage  return  is  forced  after  a  byte  hav- 
ing a  low  order  digit  of  F  in  its  memory  address  is 
printed. 

Example:  D  FCOO  FCIF 

Two  lines  of  memory  contents  are  printed  as 
follows: 

FCOO  00  01  02  03  04  .  .  .  OEOF 
FC10  10  11  12  13  14...  1  El  F 

G,  ADDR 

The  Go  command  starts  execution  of  the  user 
program  at  the  address  specified  by  the  input 
parameter.  To  insure  that  all  registers  contain  the  same 
information  they  held  before  the  user  program  was  in- 
terrupted, PROTO  pushes  into  the  stack  the  copy  of 
the  user  registers  that  it  keeps  at  locations  FFEB — 
FFF3  (CC,  B,  A,  X,  P.  S)  then  executes  an  RTI  instruc- 
tion. The  user  can  change  the  initial  values  of  the 


FEBRUARY  1977 


INTERFACE  AGE  111 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


registers  by  changing  the  contents  of  these  locations. 

Example:  G  300 

Program  will  branch  to  address  0300  and  start  ex- 
ecution from  that  point. 
R 

The  Registers  command  prints  the  contents  of 
memory  locations  FFEF — FFF3  which  contain  the 
values  that  were  in  the  user's  C,  B,  A,  X,  P,  and  S 
registers  (in  that  order)  when  the  user's  program  was 
last  interrupted. 

B,  ADDL,  ADDH,  ROMAD 

The  Burn  command  copies  the  contents  of  user 
memory  into  the  EPROM  in  the  programming  socket, 
beginning  with  memory  location  ADDL  through 
ADDH,  inclusive,  to  EPROM  locations  beginning  with 
address  ROMAD.  Each  byte  is  burned  in  with  20  3-ms 
pulses  of  -50V  on  the  Vprog  pin  (pin  1 1 )  of  the  EPROM. 
Before  attempting  to  write  into  the  EPROM,  the  con- 
tents of  the  EPROM  are  compared  with  the  user 
memory  data  byte  to  verify  that  the  EPROM  will  take 
the  byte  (PROTO  will  not  attempt  to  program  a  EPROM 
location  to  logic  LOW  which  already  contains  logic 
HIGH).  After  the  20  pulses,  the  new  contents  of  the 
EPROM  are  verified  against  the  memory  byte  to  be 
sure  the  data  was  indeed  written.  If  the  byte  did  not 
program,  a  NAK  code  is  typed  out  on  the  terminal,  and 
another  try  is  made,  up  to  a  maximum  of  three  tries. 

If  the  preverify  encounters  a  EPROM  location  con- 
taining HIGHs  where  the  memory  byte  has  zeros, 
PROTO  will  type  out  the  memory  address,  the  memory 
byte  in  binary,  the  EPROM  byte  in  binary,  and  the 
EPROM  address  (if  different  from  the  memory 
address),  then  stop.  If  after  attempting  to  write  data 
into  the  EPROM,  the  data  does  not  program,  or 
erroneous  bits  show  up,  a  similar  display  occurs  for  the 
failing  location,  with  the  additional  message  "BAD 
ADR"  typed  on  the  same  line. 

The  EPROM  address  ROMAD  is  optional,  and  if 
omitted,  ADDL  is  jsed,  with  only  the  least  significant 
nine  bits  of  the  address  being  used.  If  the  address 
range  ADDL,  ADDH  is  omitted,  the  512  bytes  begin- 
ning at  FCOO  are  used,  and  the  EPROM  is  checked  to 
insure  it  contains  all  LOWs  before  any  locations  are 
written.  If  not,  four  question  marks  are  typed  and  the  B 
command  is  aborted. 

V,  ADDL  ADDH,  ROMAD 

The  Verify  command  compares  user  memory  be- 
tween ADDL  and  ADDH,  inclusive,  with  the  corres- 
ponding locations  in  the  EPROM  in  the  prgramming 
socket,  beginning  with  EPROM  address  ROMAD.  Each 
location  that  does  not  match  is  typed  out  in  the  follow- 
ing format: 

aaaa  mmmmmmmm  pppppppp  rrrr 

where  "aaaa"  represents  the  user  memory  address, 
"mmmmmmmm"  represents  the  memory  byte,  in 
binary,  and  "rrrr"  represents  the  EPROM  address,  if 
different  from  the  memory  address  (in  the  low  nine 
bits).  Nothing  is  typed  for  matching  locations.  The 
typeout  may  be  aborted  by  typing  an  ESC  key  during 


the  typeout. 

If  the  ROMAD  parameter  is  omitted,  ADDL  is 
assumed.  If  no  parameters  are  supplied  in  the  com- 
mand, the  whole  EPROM  is  compared  to  the  contents 
of  FCOO  —  FDFF. 

I,  ADDL  ADDH,  ROMAD 

The  Input  command  copies  the  contents  of  an 
EPROM  in  the  programming  socket  into  memory 
beginning  at  the  address  ADDL  through  ADDH,  in- 
clusive, from  the  EPROM  address  ROMAD.  If  ROMAD 
is  omitted,  ADDL  is  assumed.  If  no  parameters  are 
supplied,  the  entire  EPROM  is  copied  into  the  RAM 
area,  FCOO  —  FDFF.  An  attempt  to  copy  an  EPROM 
into  non-existent  memory  will  abort  the  command  with 
the  message  "BAD  ADR." 

M,  ADDL,  ADDH,  DEST 

The  Move  command  copies  memory  from  the  range 
ADDL  —  ADDH,  inclusive,  to  the  RAM  locations  start- 
ing at  DEST.  This  copy  begins  at  the  lower  address,  so 
if  DEST  lies  within  the  range  ADDL  —  ADDH,  some  of 
the  original  data  will  be  lost,  and  other  parts  will  be 
duplicated. 

E 

The  End  of  Transmission  command  is  used  to  cause 
an  EOT  character  to  be  punched  on  the  paper  tape. 
After  a  field  has  been  punched,  an  EOT  will  terminate 
the  record  and  punch  a  trailer  tape.  When  reading  a 
record,  the  reader  will  stop  at  the  EOT  character.  If  no 
EOT  character  is  present,  the  reader  must  be  manually 
turned  off  and  the  Reset  switch  must  be  pressed  to 
enter  the  operating  system  program. 

THE  SUBROUTINE  ROM 

Many  of  the  monitor's  functions  are  accomplished 
with  the  help  of  the  Re-Entrant  Self-Relative  Sub- 
routine ROMs  (RS)3.  This  standard  ROM,  which  can 
be  considered  a  software  extension  to  the  6800  in- 
struction set,  is  also  available  to  be  used  by  the  user 
both  on  the  prototype  board  and  in  his  final  produc- 
tion system.  The  user  can  call  one  of  the  25  (RS)3  sub- 
routines with  an  SWI  instruction  followed  by  the 
number  of  the  desired  subroutine. 

The  user  should  be  aware  of  the  fact  that  the  (RS)3 
pushes  from  7  to  10  bytes  of  data  onto  the  stack, 
depending  upon  which  subroutines  are  called.  This 
means  that  if  the  user  calls  (RS)3  routines,  he  must 
make  sure  that  the  necessary  memory  space  is  avail- 
able for  stack  expansion. 

Since  PROTO  assigns  its  own  stack  area,  the  user 
need  hot  be  concerned  about  how  (RS)3  is  used. 

INTERRUPTS 

Of  the  four  available  interrupt  vectors,  IRQ,  RESET 
and  SWI  are  used  by  PROTO  while  NMI  is  left  for  the 
user.  The  vectors  are  in  RAM  (except  for  RESET  which 
is  switch  controlled)  so  the  user  writing  his  own 
program  can  completely  control  the  system. 

The  upper  memory  locations  are  RAM.  If  the  user 


112  INTERFACE  AGE 


FEBRUARY  1977 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


expects  either  NMI  or  IRQ  interrupts  to  occur,  he  must 
initialize  the  vector  addresses  to  the  starting  address  of 
the  IRQ  and  NMI  handler  routines. 

PROTO  must  have  control  of  the  RESET  vector  so 
that  the  RESET  switch  on  the  Prototyping  Board  can 
return  program  control  to  PROTO  at  any  time. 

The  reset  routine  copies  the  contents  of  the  B,  A,  X, 
CC,  and  S  registers  into  a  fixed  area  of  memory.  This 
means  that  the  program  can  be  aborted  at  any  time  by 
using  the  reset  switch  while  still  saving  all  the  registers 
except  the  program  counter.  Unfortunately,  the  con- 
tents of  the  program  counter  are  lost. 

It  is  possible  for  the  user  to  use  the  NMI  interrupt  to 
abort  a  program  execution  without  losing  the  contents 
of  the  P  and  C  registers.  This  condition  is  auto- 
matically set  in  the  NMI  handling  routine  when  PROTO 
is  called.  This  interrupt  vector  will  cause  the  contents 
of  the  user's  registers  to  be  printed  when  the  NMI  line 
goes  low. 

Since  the  SWI  instruction  is  used  to  call  sub- 
routines between  00  and  H'18  from  (RS)3  the  user  is 
somewhat  limited  in  the  ways  he  can  use  SWI  instruc- 
tions. However,  he  can  access  an  SWI  handler  routine 
in  his  own  program  by  an  SWI  instruction  followed  by 
a  byte  containing  the  decimal  number  less  than  H'80 
but  greater  than  H'19  <  n  <  H'80  sequence,  PROTO 
passes  control  at  address  FFF4.  If  the  user  expects  to 
access  his  own  SWI  routine  and  use  PROTO,  he  must 
use  the  Set  Memory  command  to  store  the  address  of 
this  routine  at  locations  FFF4  and  FFF5. 

PROTO  makes  sure  that  the  user's  SWI  routine  is 
entered  from  the  stack  with  all  registers  containing  the 
same  information  that  they  would  hold  if  the  routine 
were  entered  directly  through  the  SWI  vector. 

BREAKPOINTS 

Breakpoints  allow  the  user  to  halt  his  program  and 
examine  the  contents  of  the  internal  registers. 
PROTO  provides  two  types  of  breakpoints.  In  this 
system,  breakpoints  are  actually  debugging  routines 
that  can  be  called  from  the  user's  program  just  like 
(RS)3  routines. 

Each  breakpoint  requires  a  two  byte  calling  se- 
quence: and  SWI  instruction  followed  by  a  number. 

Breakpoints  may  be  inserted  either  by  reassembling 
the  program  with  the  extra  SWI  instructions  added  or 
the  Set  Memory  command  may  be  used  to  replace 
parts  of  the  code  with  SWI  instructions.  Note  that  the 
second  method  is  not  satisfactory  for  the  snapshot 
option  (described  below)  since  the  replaced  code  must 
be  restored  before  execution  can  be  continued.  When 
using  the  second  method,  the  user  must  make  sure 
that  he  replaces  the  first  two  bytes  of  an  instruction.  If 
the  SWI  replaces  the  second  or  third  byte  of  an  instruc- 
tion, it  may  be  interpreted  as  an  address  rather  than  an 
opcode. 

The  different  types  of  breakpoints  are: 

1.  Print  registers  (SWI,  H'80) 

2.  Snapshot  (SWI,  H'81) 

The  sequence  SWI,  H'80  saves  the  user's  registers 
at  the  vector  stored  in  FFF4  —  FFF5,  prints  their  con- 
tents (in  the  order  CC  BB  AA  XXXX  PPPP  SSSS), 
then  returns  control  to  PROTO. 

The  sequence  SWI,  H'81  prints  out  the  contents  of 

FEBRUARY  1977 


the  user's  registers  then  continues  executing  the  user's 
program  starting  at  the  address  following  the  byte 
containing  the  number  H'81.  Note  that  if  this  address 
does  not  contain  a  valid  opcode,  unpredictable  results 
will  occur. 

6800  PAPER  TAPE  HEX  FORMAT 

The  AMI  6800  Hex  Tape  format  provides  a  com- 
pact representation  of  binary  data  patterns  for  trans- 
mission using  ASCII  communication  terminals. 

The  Hex  tape  is  organized  into  data  records  with 
each  record  containing  information  in  the  same  format. 
The  record  information  consists  of  type,  length, 
address,  data  and  checksum.  All  records  begin  with  an 
'S'  character  for  start  of  record  identification.  All  infor- 
mation on  the  tape  which  is  not  between  a  start  of 
record  and  the  checksum  is  ignored. 

TAPE  FORMAT 

ASCII 

Character  Description  

1  Start  of  record  (S) 

2  Type  of  record 

0  —  Header  record 

1  —  Data  record 

9  —  End  of  file  record 
3—4  Byte  Count 

Since  each  data  byte  is  repre- 
sented as  two  hex  characters, 
the  byte  count  must  be  multi- 
plied by  two  to  get  the  number 


?  CONFUSED  ? 

SAVE  $100-8200 
UP  TO  30%  DISCOUNT 

If  you  are  like  most  people,  you  are  being  overwhelmed  by 
the  many  computer  kits,  I/O  boards,  peripherals,  cables, 
interfaces,  etc.  that  are  flooding  the  market. 

Who  has  the  lowest  price?  Which  is  best?  What  works  with 
what?  How  do  you  decipher  all  the  ads  and  specs?  What  do 
you  actually  get?  HELP!!! 

We  can  take  the  hassle  out  of  getting  a  system  together.  Let 
us  know  what  you  need  and  we  will  package  a  complete 
workable  system  for  you  —  no  loose  ends  —  either  kit  or 
assembled,  for  the  lowest  price  around!!!  We  have  more  than 
10  years  experience  in  the  mini-micro-maxi  computer  field,  we 
know  our  way  around! 

IMSAI,  TDL,  Processor  Tech,  Solid  State  Music,  Oliver  Audio 
Eng.,  Polymorphics,  Lear  Siegler,  Cromemco,  Used /Surplus 
Equipment,  etc. 

•  Business  Systems 

•  Consulting/Analysis 

•  Software/Programming 

•  Micro-Mini-Maxi  Computers 

BITS,  BYTES  &  PIECES 

621  1  Quincewood  Circle 
Citrus  Heights.  CA  95610 
(918)  726-6469 

CIRCLE  INQUIRY  NO.  40 

INTERFACE  AGE  113 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


5,  6.  7,  8 


9  N 


N  +  1,  N  +  2 


of  characters  to  the  end  of  the 

record.  (This  includes  checksum 

and  address  data.) 
Address  Value 

The  memory  location  where  this 

record  is  to  be  stored. 
Data 

Each  data  byte  is  represented  by 
two  hex  characters. 
Checksum 
The  one's  complement  of  the 
additive  summation  (without 
carry)  of  the  data  bytes,  the 
address,  and  the  byte  count. 

Example  Data  Record 

Memory  Contents 
Address  Data 


A000 
A001 
A002 
A003 


10 
1A 
20 
2A 


Data  Record  Contents 
Character 


Tape 


1 

Start  of  record 

53 

s 

9 

\  ype  or  record 

o  i 

1 

3 

R  v/tp  poi  int 

30 

o 

A 

37 

7 

D 

A 
M 

a 
o 

n 

7 

A  ri  ri  race 
nUUI  ebb 

7n 

n 

Q 

o 

n 
U 

Q 

uaia  uyie  i 

71 

o  I 

i 

i 

in 

I  u 

7n 

n 

1 1 
i  i 

riot  a    hwto  0 

udid  Dyie  £. 

O  1 

1 

1 

1  0 

+  I 

A 
M 

13 

Data  byte  3 

32 

2 

14 

30 

0 

15 

Data  byte  4 

32 

2 

16 

41 

A 

17 

Checksum 

38 

8 

18 

34 

4 

E 

in 


The  format  for  all  hex  tape  records  is  diagrammed  below. 


Character 

Header 
Record 

Data  End-of-File 
Record  Record 

1           Start  of  Record 

53 

S 

53 

S 

53 

S 

2          Type  of  Record 

30 

0 

31 

1 

39 

9 

3 

Byte  Count 

4 

31 

32 

12 

31 

36 

16 

30 
33 

03 

5 

6  Address 

7  (if  any) 
8 

30 
30 
30 
30 

0000 

31 
31 
30 
30 

1100 

30 
30 
30 
30 

0000 

9  Data 
10 

34 
38 

39 
38 

98 

46 
43 

FC 

(Checksum) 

34 
34 

30 

32 

02 

35 
3? 

41 

48 

A8  (Checksum) 

N  Checksum 

39 
45 

9E 

114  INTERFACE  AGE 


FEBRUARY  1977 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


SEE  MICROCOMPUTER  SOFTWARE  DEPOSITORY 
PROGRAM  INDEX  FOR  COPIES  OF  THIS  PROGRAM. 


(Mull)      ii/<i>f}t>  *MUTU 


PROTO  PROGRAM 


STMT      LOC       OBJtCT     W     SOURCE  STATEMENT 


suuRCt  statement 


00U0     Bb  FBCF  A 
OObl)     Bb  it 
0052    bO  o2l>u  I 


FFDB 
FFDA 
FFDC 
FFOt 
FFEO 

fft^ 

FFtl 
FFtU 
FFE5 
FFE7 
F  F  E  9 
FFEA 

FFEB 
FFEC 
FFED 
FFEfc 
FFFO 
FFF2 

FFF'I 
FFFb 
FFFO 
FFFA 
FFFC 


FtfLL  A 

FBCF  A 

FBCE  A 

0020  A 

0000  A 

ooia  a 

UOOu  A 

FFFF  A 

00OA  A 

O07F  A 


O00B  i 
000b  i 
0012  i 
000F  i 

0010  i 
0015  i 

0011  i 


F  F  DO  i 
0002 

0002 
0002 
oou2 

DU02 
0001 
0001 
0001 

0002 

0002 
0UU1 
000  1 

0001 
0001 
0001 
U0O2 
0002 

ou02 

UOU2 

ooo,; 

00u2 
0002 
0U02 


'  PROTOTYPE  BUAHD  MONITOR  I'HQGRAM 
'   WtRSlOW  2.1  01/0d/7b 


UtFlM  T  IONS 


ACIAC 
ACIAC* 
ACIAS 
BLANK 


EUU 
EOU 
EUu 
EUU 

tou 

EUU 
EOU 
EQU 
EOU 
tOU 


SFbCE 
SF3CF 
SFSCE 


ACIA  CONTROL  REG 
ACIA    0  A  T  A  REG 
ACIA  STATUS  REG 
BLANK  CHAR 

CARRIAGE  HE T  Char 

ABORT  CHAR 

END  OF  MSG   TO  BE  PRINTED 
HIGHEST  ROM  ADDRESS 
LINE  FEED 


MOMENT  ,GE  TRNG,  NX  T  ADR.  k'XI  SIS,  RNGERH^'BADR 
PCRLF,OUTCH,PSPACE/SETMEM,ABOHT 
PRJMAD, AOR, ADDL , ADUH,  COUNT,  MONI TR 
RSRSH, BURN, MOVE, RtAO,VFY,PINIT 


•HSHSR  IcUUTlNt  UEFINITlONST 


SUBXAb 

ADDABX 

PmSG 

P2Ht  X 

PHhti 

CONHB 

PUTA 
GET  A 
ALPNUM 
PRTXO 


EOU 
EUU 
EOU 
EQu 
EOU 
EQU 
EOu 
EQU 
EOU 

tou 


SUBTRACT    X   FROM  i 


ADD  I 


-a  JO 


PRINT  MSG 
PRINT     BYTE    AS   2    HtX  CHARS 

PRINT   fliORD  as  u  hex  Chars 

CONVERT    HEX    TO  BINARY 

OUTPUT    TO  ACIA 

INPUT   FROM  TTY 

TEST  F  OH  ALPHANUMERIC 

CQNV.    x   TO  DEC.    I  PRINT 


•'SUBR  IS  A  M  A I k  0  TO  CALL  RSRSR  ROUTINES 
SUbH  MACRO  PARAM 


MUN I  T  OR  RAM 

ORG 

iASE  EUU 
lUS  tQU 


ADR 

AUDI. 

ADDH 

BUFFTF1 

RECTY^ 

l.UUM 

CKSM 

SAVES^' 

SAVE* 

ECHO 

TLUUNT 

«  USER 

CREG 

BRtG 

AREG 

xR£G 

PREG 

SUtG 


USnl  RMB 

ACIAI  RMB 

IROVtC  ««B 

SwlVEC  «M" 

nmIvi.C  «M« 


rmb 

RMB 

wmb 


Rmb 

Rwb 

RElilSltRS 
RMB 
RMB 
RMB 
RMB 
RMB 
HMB 


1 


•••Change  if  ram  usage  CHANGES 
BASE  ADR  UStO  «TTH  IhDEx  OPS 
BOTTOM  UF   MONITOR  STACK 

LINE   OF    TTY  INPUT 

ADDRESS    IN  PROM 

OFFSET    FOR  LOADER/PUNCH 

pARAM,    ENTtRtD    BY  USER 


POINTER    TO  LAST    CHAR  SCANNED 
TAPE    (■'ECJRD  TYPE 
COUNT    FIELD   FHOM  TAPt. 
CALCULATED  C«S* 
TEMP  STORAGE  FOR  S  REG 
TEMP  STORAGE  FOR  *  REG 
l=ECHO   TTY,    0='lO  ECHO 
TEMP  LOC  FUw  COU*I 


USER   SaI    VfcC  TJR    (may    .<0T   BE  IMPLEMENTED) 
INDIHECT    POINTER   TO   ACIA   FOB  RSRSR 
INTERRUPT   HEJUEST  VECTOR 
SOFTWARE    INTERRUPT  VECTOR 
MUN-MASKAoLt.    INTERRUPT  VECTOR 


MUNITUR  ENTRY  VECTOR 


OUOU  I  STA)<T 
0000     20  05 

0002  I  r-Hf* 

0002     7E    U007  I 

0005  *•  BCt.  A  AC  1 A  A 

0OU7  1  SlAkTI 


ISfcC 
ECiU 
bRA 
EQU 
JMP 
.tUHi) 


0009 

oooc 

000D 
W10 
001  J 
001b 
0019 
00IC 
001F 
0022 
0025 
0026 
002B 
002E 
0011 

uqi<j 


B7  FFEb  A 
J2 

B7  FFtO  A 

F7  FFEC  A 

FF  FFtt  A 

BF  FFF2  A 

BE  FFBF  A 

CE  U002  I 

FF  FFFC  A 

FF  (-FF8  A 

CE  U'OOI  1 

FF  FFFu  A 

CE  ItUBt  I 

FF  FFFA  A 

CE  000b  1 

FF  FFFb  A 


i  01 
B7  FBCt  i 


OOul  I  MUNt.N1 

0(;ul  1 

60   U005  R 

BD   UiUH  1 


CREG 
AWEG 

brei; 

XREG 

S>  EG 

•bOS 

•BREAK 

NMlvEC 

1R JVEC 

«Srtl30 

USrtl 

■SrtlHA^ 

SwIVEC 

»AC1AA 

ACIAI 

»i 

ACIAS 


»1  SET  ACIA 

4C1AC 

4  RETURN   ] U  mQnI TUR 


RESET    INTERRUPT  MANPLtH 
BREAK   ON   INTERRUPT  ROUTINE 


SAVE   CURRENT    VALUE  OF  REGS 

SAVE  x 
SAVE  SP 

I  Ml  T.    SREG   TO  HON.  STPCK 

HREAkPOI^T  ROUTINE 

STORE    IN    INIEHRUPT  VECTORS 


SET  vt>  ACIA  PTK 
RESET  ACIA 


CR 


Euu 
E&U 
JSR 
JSW 


OObb 

oosa 

OObB 
UOSC 


LtfX 


BC  FF07 
2b  02 
20  "7 


ibUF 

BUFPTR 
SEC 

HDL  ECH3 
U1N  UNTIL  LOUP 
11  LPX  «BJF  +  7l 

ONE  RT20 

"RA  abo<jt 
0  JiK  rsAlTTr 

0  STA  A  o,i 

I N  x 

HlLt  COfiDITlUN  : 


INITIALIZE  HUFt-'TR 


READ  NExl  ChAR 
INSERT  CHAR   INTO  BUF 
INC  BUF  P I R 


DtLOtt    1    ChAh  COMMAND 

CUmHAKE  ChAh  rtlTH  TABLE  OF  VALID  CHARS  FOLLOfttD  BY 
AllURtSSES   OF    APPROPRIATE  ROUTINES. 


0070 
00/1 
0(J7u 
0077 


00«2 
OOBJ 
008U 
1)085 
00H8 


COB*     20  21 


LUX 

■    BEGIN  LOOP 
OLUOP         CMP  i 
BNE 

»  YQ\jh\)  Char. 

LDX 
JmP 

•  NO  LUMPAkE. 
DL10  1MX 

l.'vX 
INX 
CPX 
BNfc 

•  ENO  LOUP. 

Ml 


START  OF  TABLE 
CUMPAKE 


MOvE  TO  next  Char. 


GOTO  PROPER   ROUT  INE 


0UU7     1  Ifj'lLF.M 


AB3RT 


IN  TABLE. 


TAoLt.:       TAbLE   OF    VALID    1    CHARACTEH  COMMANDS. 
EACH  EN1RY   CONSISTS  JF    1  BYTES.      bYTE  1 
CURTAINS    THE    ASCII  ChAR.     BYTES  2,1  CONTAIN  Th£ 
ADDHESS  uF    THE   APPROPRIATE  ROUTINE. 


OOoC    1  LTAbLt 


008C 
008D 
OOBf 
0090 
0092 
0091 
0095 
0096 


009C 
009E 
009F 
00  Al 
00A2 
00  All 
00A5 
00A7 
OOAB 
OOAA 
OOAb 


EOU 

BYTE 

rtOHU 

BYTE 

rtORD 

BYTE 

rtORD 

BYTE 

BYTE 
rtUHD 
BYTE 
rti;RD 
BYTE 
ifURO 
BrTE 
rtOKU 
BYTE 
rtORO 
BYTE 
lOkD 
BYTE 


OOAD   1  ABORT 
OOAU    I  UAUINP 
OOAti     CE  0271  I 


F"H  |M    tdc    Im.   VtTiJI't   tU   MU"4l  TU*» 


00B0   1  MSGMON 

odbu  j  msi;abt 

00B0     ttE  FF  8F  i 
OObi 

0065     20  Qa 


mo 
t.tu 

LDS 
SUBR 
BRA 


•  BOS 

PMSG 
MONENI 


Sl^BOTTUM  OF  STACK 


275 
2/6 
277 


OubC     20  :- 


OOBE  10 

O09F  Et  05 

HOC!  A6  00 

OOCi  2d  OC 

DUCj  B«  10 

0OL7  2A  01 

0UC9  7E  0000 


0001 
0CIU2 
0OD« 
OODb 
0OD6 


,1  HA(»OLtR: 

UETt««lNE  hHElHEH  S,vl  IS  WJUlUHl  CALL.  HSRSR  CALL, 
Uh  USER  J>>,1    MOT  IMPLEMENTED). 


bwtAKPOlNT  EJTRY 
CLEAR  ►'RQm  burner 
PkEIEND  TO  Bt   S/iJ  12b 
SAVt  REGS 


l.>(Utx    BfTf    <  B  t  T  E 
TS* 


■TER 


,<,  i  tha  r  l.ut  us  mere) 


xisRET.  ADR. 

LDA   A     o,x  A:  =  In(jEx  BYTE 

bMI         SwIiO  dREAKPOlNl? 

UStR    HAS    AUtllTljMAL  (RS)*'i   ADDH    JF    FIK3T  +  2   MUST    HE    IN  FFFj 

Suo   **     »2<*  RSRSR  CALL? 

B»'L           SrtUO  ^U 
RSRSR 


JMP 

•     uSEH  }*l 

imp 

«    MUMTUR  CALL. 


2b  02 
oC  05 
CE  FF  to 


00OB 
OODC 
00OE 
OOOF 
00L2 


ShIuu  lDx 
•   BEG^  LOOP 
S«150         FUL  I 
STA  | 

INX 
CPX 
BmE 

■  EnD  ldop 


SrtUO 
5.x 
•  CREG 


GO  00  IT 
RfctIS  FRO"  STACK 

INCREMENT  RET.  ADDH. 

DEST.   FOR    1ST  REG 

GET  REG 
COPY 

MOVE    TO  *EXT  rEg 
END  OF  LOOP? 


0uu7    I     MUNlTR       Et/U  ■ 
aE   FFbF    A  LDS  "B->S 

bD   Oi'ie   I  JSR  RD=?OFF 


FEBRUARY  1977 


INTERFACE  AGE  115 


SOFTWARE  SECTION 


SOFTWARE  EDITORIAL 


29u 
295 
296 


STILL   CONTAINS  S*I  I.MOEX. 


OOEb 

ooee 

OOEA 
OOEC 


DOLE  I 
OOEE     60  03 

00F0     7E  00H7  I 

00F3  I 

00F3     CE  FFE6  A 

OOFb  C6  03 

00F8 

OOFA  BO  0180  1 

OOFO  5A 

OOFE  2E  F6 


0100  Cb  03 

0102  BO  037C  I 

0105  5A 

OlUb  2E  FA 


^□T  129:  BREAK 
129:  snapshot 
and  return  to  user  phogram 


PREGSl     PRINT  USER  REGISTERS 


EOU 

BSK  PR1 

JMP  MONENO 

EOU  * 

I. OX  *CrEG 
3  1-ByTE  REGS 

I  OA  B  *1 

SUBK  p?nEX 

JSR  PSPACE 
OEC  B 

BGT  PR10 


P4hExS 
PR20 


SET  UP  COUNT 


SET  UP  COUNT 


0115 
olio 
0119 


012B 
012D 
OHO 

o  i  a 


HO  OioO 
Ct  i)27o 
It  uubQ 


013,E  FE  FhUL  i 
0111 

oiui  no  ui6o 

0U6  FF  FFuC  i 

0P49  uc  FFuE  ' 

01«C  27  OC 

OluE  86  Ft-00  I 

0151  64  Of 

0151  26  t9 


015A     7E   0041  1 


ulo2  Co  in 

U16N  4F 

OlbS  SO  02Ui> 

0  1  68  5A 

0!b<>  26  F  9 

Ul6H  20  EU 


01  fO 
0  1  7  3 
0  176 


«  HtSTCiHt  u-aLK'  ; 

«LSUi».  lOS 


CiET  USER  REG 

PUSH    INTi)  USER  STACK 

MOvE  TO  NExT  REG 

LAST  REG  ? 

Ml.    COnT  HUE  LUOP 

RETURN    TO  USE  M  PKOG 


u  120  BO  0<:<>E  1 

Ul2i  11 

0124  bl 

0  125  11 


OEx 
SUdw 
JSw 


p2h£x 
PSPACE 
«MCSER 
«SGAdT 


SAVE  CALC.  CKSM 

A:s   NExT   BYTE  FHUM  1/ 

6:=CALC.  CKSM 
B  =  T  APE  CKSM? 
NO. 

X!=AOH  UFCALC.  CKSM 
PRINT   CALC.  CaSM 


..AUUH  CCHMANP 


'bEblN    OUTER  LUoP 
UM10  LOX  ttADDL 

J5«  PUHEXS 
*    BtfclN    i.*Nt*  LUIP 
0*>20  LOx  ADOL 

SUbR  P2HEX 
JSH  PSPACE 
Six  ADOL 
Cl'x  AUJM 
BED  D«50 

AOOL+1 


AwU  I 


«$F 


DM20 

*   tNU  Uf-    INNER  LDOP 

JS*  PCSLF 
tJRA  OMlO 
«  END  UF  OUTER  LUUP 
UMbO  JM(>  MO^E'Ml 


PHINT   AODL.  SPACE 


PHI  NT   MEM  I  X ) .SPACE  > INC 


IF    A00L=ADDm+1,    END  OF  RANGE 
EXIT  OUTER  LOOP 

IF  LSB'S  UF  ADOL=0,  END  OF  LINE 

^or  End  of  line,  continue 


CR,LF.    BACK   TU  I 


PUNCH   EnU   UF   FILE    AND   00  ,VULLS 

-Dx         BMPEOF  HUNCH  tOF  RECORD 


'  4*U*Lh  IW  OF  fill  4 ID  *i>  'lULLl 


CE  02iA   I  £UF 


LOx  i 
SUbK  I 

BU    'iu'.i  J 


PUNCH   EuF  RECURO 


•  59  LI140  COUNTER 

BEGIN  LOOP 

LOAD  HULL 
OUTCh  PRINT  ONE  NULL 

DtCHEMENT  COUNTER 
NULLl  DONE? 

END  OF  LOOP 
OmSO  CR^LF.BACK    10  M0N1TUM 


GETRANGE  tAL>DL,ADUrl,6uFPTR) 
GtT  AUDREYS  RANGE  FrUm  BUF 
AhUhT    IF  IimVAlIl) 

SET    AL)OH:  =  ADD-ni    TU   SIMPLIFY  COMPARISONS 
RETURNS  AUDL  «.  ADDH41 

alters  auk. x, a, 6 


ST* 
STX 

JSH 


FE  FFHA   A     Lft  T Kb  1  LDx 
FF   FFDE   A  STX 
•    IhE  NEXT  5 
CE   FF90    A      GtlRbl  LDX 


STOKE  ADDL 

^AY    Bt   U  NL  Y    1  PAWAM 

GET  AODH 


H.T.   BASt  OF 


At/iJM-tJASE  r  X 

440 

U  lt< "J 

to  4r 

Lji  1.1 

too** i -base / * 

ADJL+I-BASt»« 

448 

0  16D 

a2  uC 

AODL-BASE / x 

tut 

01OF 

^^  Ob 

•sli 

GETRGu 

450 

0191 

CE  02b5  1 

RNbEHh 

tG* 

bmrngEh 

J^h 

452 

453 

1)197 

IjE?KI,4 

Lu* 

AODm 

itiu 

019« 

06 

1NX 

STX 

ADOH 

tSo 

0  19E 

39 

RTS 

«57 

a59 

Ub^ 

163 

*tb5 

019F 

BD  U2b6  1 

NxTADR 

066 

01  A2 

27  06 

G10 

«67 

U68 

01A4 

FE  Ft-uA  A 

ADR 

ilb9 

0U7 

FF  F  FF  0  A 

PHEG 

*J70 

<*7l 

01AA 

7E  010C  I 

JMP 

RESTAK 

472 

u  m 

475 

CUMMArtU 

478 

0  1  AO  I 

LOAU 

EOU 

481 

0  1A0 

C  E  0  0  (i  a  A 

LOX 

>0 

482 

(i  ido 

FF  FFDe  A 

STX 

OFFSET 

483 

01B3 

FF  FFDC  A 

STX 

AODL 

484 

OlSb 

09 

LOUFST 

utx 

465 

0 1  b  7 

Ff  FFOE  A 

Six 

ADOH 

466 

018A 

60  02d8  1 

JSR 

NXTADR 

487 

01BD 

27  IE 

b£0 

LHF2 

468 

01BF 

FE   F  F  DA  A 

LDx 

ADR 

489 

01  C  2 

FF   FFD6  A 

STx 

OFFSET 

6D  0266  1 

JSH 

NX  TAOR 

27    1  i 

ttEO 

LHF2 

49i 

01  C  A 

FE  FFU6  k 

LOx 

OFFSET 

STx 

AOOL 

CE  0000  A 

LOx 

«0 

FF  FF  08  A 

STX 

OFFSET 

BSH 

G6TRU1 

LDx 

AODH 

498 

01  06 

20  U9 

bflA 

LOOFST 

499 

*  BEGIN 

UUTtH  LUOP 

BD  03A5  1 

LHF2 

JSR 

RDRON 

501 

•  SHORT 

LllW  11 

1  SKIP  HDR  recc 

502 

0  1  EU 

60  7H 

RDf'Rt 

BSR 

FINDS 

503 

SETS  ( 

BO  OoOO  I 

JSH 

rtAITTY 

01E5 

81  30 

CMP  A 

*'  0 

506 

»1E7 

27  F  7 

BEU 

hOphe 

»  END  SHUHT  LUO»' 

508 

01E9 

B7  Ft-t2  A 

STA  A 

REC  TYP 

CLR 

CKS^ 

510 

0  1EF 

BO  02'>E  1 

JSH 

NEXT20 

DEC  A 

■ji 

OEC  A 

5  1  3 

OEC  A 

514 

01F5 

67  Fft3  A 

STA  A 

COUNT 

515 

0 1 F  8 

BD  029E  I 

JSR 

NEXT2D 

516 

OlFb 

87  FFOA  A 

STA  A 

ADR 

517 

01FE 

BD  0296  I 

JSH 

NEXT20 

518 

0201 

BB   FFD9  A 

ADO  A 

0FF8ET+1 

519 

0204 

87  F.FD8  A 

STA  A 

AD«*I 

520 

0207 

66  F  F  DA  A 

LOA  A 

ADR 

521 

020A 

69  FFD6  A 

AOC  A 

OFFSET 

522 

0200 

67  F  F  DA  A 

STA  A 

ADR 

523 

0210 

t)6  FFE2  A 

LOa  A 

REC  T  YP 

524 

0213 

81  31 

LHF3 

CMP  A 

«'I 

525 

0215 

26  14 

BNE 

LHF4 

526 

527 

•  LOAD 

DATA  RECOKO 

526 

529 

•BEGIN 

JNTR  LUUP 

530 

0217 

8  0  029E  I 

LDR10 

JSR 

NEXI20 

531 

TAPE. 

532 

021A 

FE  F FDA  A 

LOX 

ADR 

531 

021D 

BD  03AF  I 

JSR 

SETOFF 

514 

0220 

08 

INX 

535 

0221 

FF  FFOA  A 

STX 

ADR 

53b 

0224 

7A  FFE3  A 

DEC 

COUNT 

537 

0227 

2E  EE 

BGT 

LOR10 

536 

*ENO  UNTIL  LUUP 

539 

0229 

to  Cm 

BRA 

LHF9 

LHF  4 

CMP  A 

»>9 

t  i 

BNE 

BAOTAP 

542 

BO  01 1C  I 

JSR 

CHEKSM 

544 

0232 

Bb  FFE2  A 

LOA  A 

RECTYP 

5«5 

0235 

81  19 

CMP  A 

26  A4 

BNE 

LHF2 

547 

548 

•END  UF 

OUTER  LOOP 

549 

550 

0239 

BO   039B  I 

JSR 

ROROFF 

551 

023C 

CE  (I26F  I 

LOx 

KMEDF 

552 

02iF 

7E    OOtiO  1 

JMP 

MSGMOKI 

553 

554 

0242 

3D  039B  I 

BAD  1 AP 

JSH 

ROROFF 

555 

55b 

024S 

CE   0281  I 

LOX 

*MTAPER 

557 

02U8 

SU8R 

PMSG 

558 

559 

*  ACCEP1 

'    HQ    COMMANDS    UNTIL  US 

5bl 

D£u 

It  f  F"E*  * 

INC 

ECHO 

5b2 

563 

0240 

BD  0400  1 

8T1 

JSR 

rKAlTTY 

564 

0250 

20  FB 

BRA 

BTl 

565 

566 

567 

566 

«  FIND  S 

577 

0258 

61  51 

CMP  A 

»'.S 

26  F9 

BNE 

FS10 

579 

•EnO  LOUP 

025C 

19 

ft  TS 

561 

582 

*  MESSAGES 

583 

564 

0250 

11241 

Mfl  ADR 

CHAH 

/BAO  AOR/ 

025F 

»l«20 

U261 

11144 

02b3 

52 

585 

0264 

04 

BYTE 

56b 

02b5 

52H1 

MRNGER 

CHAR 

/RANGE  ERR/ 

0267 

4£47 

0269 

452ti 

02bB 

U552 

0260 

52 

587 

026E 

04 

BYTE 

588 

026F 
0271 

'15'lF 

MEOF 

CHAH 

/EOF/ 

S89 

0272 

OH 

BYTE 

590 

0273 

3F3F 

MUUES 

CHAR 

/????/ 

0275 

3F3F 

591 

0277 

04 

BYTE 

592 

4l4B 

MCSER 

CHAR 

/CkSm  ERR/ 

0J78 

027C 

20il5 

027E 

5252 

593 

(1280 

OH 

BYTE 

594 

0281 

511111 

MTAPER 

CHAR 

/TAPE  ERR/ 

0283 

5045 

0265 

2045 

0287 

5252 

595 

0239 

OH 

BYTE 

59b 

028A 

5339 

MP  EOF 

CHAR 

/S9030000FC/ 

028C 

3033 

AlH)H.t,E.AUOL 
RA.tIGE  ERR  *1SG 
PRINT    MSG    4  ABORT 


AJHiflNAl  FftO*       T 1013 

(in  interrupt  hanolerj 


ANY  OPERANDS? 
NO,   USE  DEFAULT. 
YES. 

IF  ONE.   IT'S  OFFSET 

A  NO  T  M  E  R  ? 

NU. 

YfcS.     FIRST   T*U  are  HAnue 


GO    TRY    AGAIN  FOR  UFFSET 

TURN  UN  READER 
RDS 

FINO  START   OF  RECORD 

ECHO)i=o    on  Entry 

RETURNS    t  A  J :  =  f  T  V  m> 
IGNORE  HDR  RECORDS 


SAVE  MECORD  TYPE 


SAVE  BYTE  COUNT 

READ  AOR  FIELD  FROM  TAPE 

1ST  BYTE 


STORE  IN  MEm(x>,  VERIFY 


CHECK  CKSM 

GET  RECORD  TYPE 

EOF  RECORD  ? 

NO.    CONTINUE  LOOP 


PHW  *UPt.  CAB* 


ESC  CAUSES  ABORT 


116  INTERFACE  AGE 


FEBRUARY  1977 


Advanced  Microcomputer  Products  Presents 


—  „j2i°™Jr«  


8K  RAM  BOARD  $198.00 

ADM 


*  MICROPROCESSOR  PRODUCTS 


t*>  Htn 


tn    IM7401     16  U  '«W 

5M  iMl+M  *UL  HP! 
f  w>    i"ly  urw     15. 94 


D  IP 


61  on" 

33  H 


SPECIAL 
BUY  tO  OF  THE  FOLLOWING 
AMD  YOUR  PRICE  IS 

boboa        310  » 

till  A  10 

AMD  9112  Z30 

RF  MODULATOR  MODULE 

uv>  w  r  e>i*".i  j-«  Wff  ¥p»Zw  t  B  .95 

VtC  -ISrtH 


*   NEW  PRODUCTS 


NEW  FROM  NEC  Mic 


mputer!  FIRST  TIME  OFFERED 


*  I C  MARKET  PLACE  * 


0372  Floppy  Disc  Controller  Chip  .  S75.00 

0371  Mag.  Tape  Cassette  Controller  Chip  65.00 

Application  Notes  (26  pages)  .  6.95 

Gl  AY3550  4»  Digit  DVM  Chip  .  29.95 

GIAY3600  Keyboard  Encoder  9.95 

Intersil  8038CC  ,    ,    ,  ".95 

AY3507  9.95 

R0  32513  Char  Gen  9.95 


★  LINEAR 


LM106H 
LM301CN 


LM305H 
LM305AH 
LM306N 
LM  07CN 
LM307H 
LM308M 

lm308cn 

LM309H 
LM309K 
IM3J0CN 
LM310H 
LM3111I 
LM311CN 
LM112H 
LM318H 
LM318CN 

LM320K  5 


7402N 
7403N 
7404N 
740SN 
7406N 
7407N 
740»N 
7409M 


7417N 
742«W 
7421N 
7423N 
742SN 
7426N 
7477N 

*XH 

7432N 
7433N 
7437N 

743»< 
7440N 

7441N  1 

7447N 

7443N 

7444N  1 


LM320K  17 
LM320K  15 
LM3201  S 
LM320T  52 
LM320T  8 
LM320T  12 
LM320T  18 


LM370H 
LM373N 
LM377N 


*  7400  TTL 


4125N 


74KW 
7451N 
7453N 

7454N  .76 

7470M  45 

7472N  .30 

7473N  30 

7474N  30 

7475N  69 

747BW  4? 

7480*  70 

748ZN  »S 

74«3N  95 

748SN  B9 

7486N  28 

7489N  •'■» 

7490N  60 

7491N  70 

7492N  59 

T49W  79 

7494M  79 

7496M  79 

7466N  .79 

7497N  *3.75 


74126N 

74132N  .70 

74141N  88 

7414SN  .70 

74147N  SI  59 

74148H  »1  29 

74150N  St. 15 
741S1N 


ALTAIR  /IMSAI  COMPATIBLE 
8K  MEMORY 


THE  SAME  BK  BOARD  OFFERED  TO  THE 
SCCS  GROUP  PURCHASE  NOW  OFFERED 
TO  YOU  AT  THE  SAME  LOW  LOWPRICE' 

SI 98.00  COMPLETE 

ltYoudei.re91L02APC   Plcaie  add  S995 


74153N 


74160N 
74161N 
741S2N 
74183N 


SI  10 


74107N 
74109N 
741Z1N 


53 


74I77N  *16  25 
74173N  SI  40 
74174N  SI  25 
74175N  S125 
74176N  79 
74177N  79 
79 


74185N  li.rP 

74190N  1 1  jq 

741S1N  (I  30 

74I92N  i-  m 

74193N  3  ■  w 

74194N  >. 

74195N  K 

74186N  H 

74197N  -f 

74198N  (1  f 

74199N  II  Mi 

742S1N  II  14 

74279N  *  t  Ip 

B093N  i-i 


751SON  : 

75450M 

75451N 

75452N 

7S4SJN 

7S4S4N 


TMS  4060  RAM   S4.95 

NEC  4096  RAM  .„  4.25 

1602BUART  5.50 

1502F  FIFO    12.95 

34702  BAUD  GEN  14.95 

NEC  5101C-E  CMOS  RAM    6.95 

R032513CHAR  GEN  LowerCase  ...14.95 

WD  1671B  ASTROS  29.95 

WD  1941  DUAL  BAUD  GEN   9.95 

WD  1771  FLOPPY  DISC  CONT  74.95 

SPECIAL 

10022PIN4096OYNRAM  3.25 

100-22  PIN  4096  DYN  RAM  3.25 

100-16  PIN  4096  DYN  RAM   3.45 


6  BOO 
STARTER  SET 


741S1N  S275 
74irrN  79 
74164N  S210 

100  PIECES  MIX  TAKE  10%  DISCOUNT 
10O0  PIECESMIX  TAKE  15%  DISCOUNT 


PLESSEY  SEMICONDUCTORS 


RADIO  COMMUNICATION 

*lAl£C  S4U4C    J  75 


8  Bucks  S6B00 
ci  III    6B0O8t>.1  CPU 
III  6B70PIA 
(II  6850ACIA 
1161  2102RAMJ 


SHI1C  Hi 

■.,  sij. 

SLiZOC  tv> 

$L»jlC  J%% 

SlUX  iVi 


Sl  P4.5C  iK 

11  Mi-:  m 

■.ir.'-nt.  !■■ 

&L8&1C  *■<■■ 

SLHK  J 15 


DIVIDERS 


SPiSWtJ  6  95  SP86206  12.50  SP8640B 

pmi'h  4  25  5P8671B  850  PS6G41B 

16  00  SP8622B  6  50  SPB642B  ' 

TMia}ft  14  50  SP8630B  2  0  00  SP8643B  ; 

&IW3*B  8  25  SP8631B  12  00  SP86468 

7N4'I  17  00  SP8632B  10  00  SP8647B 

■,i't".;j-  17  50  SP8634B  35  00  SPB6S0B  ; 

VH  UP  18  00  SP86358  2750  SP8651B  ' 

?H1»  f0«  SP8638B  22  50  SP8657B  ' 


B0BGA 
STARTER  SET 

.t  S8000 

ptCM     nl  aoaoABh.iCPu 

(1)   82121  D  Pon 

III  8224Ci«v 

II)  827BSyitemContici 


FCN  GEN  KIT  $18.50 
63  Key  Keyboard  19-95 
19  Key  Keyboard  11.95 

Also  ...  we  stock  entire  continental 
specialties  line  new  sockets  and  bus  strips 
for  microprocessor  design 

Experimenter  600  (.6  spacing)  $10.95 
Experimenter  300  (.3  spacing)  9.95 


All  shipments  first  class  or  UPS  in  U.S.  or  add  5% 
for  shipping  and  handling.  Minimum  order  $10.00 
California  Residents  add  6%  tax.  Foreign  add  8%. 


PUTER 


P.  O.  BOX  17329 

IRVINE,  CALIFORNIA  92713 

PHONE  (71419683655 


00 

o 

05 

SO 

CA 

45. 

1 

o 

> 
* 

to 

00 
SO 

SO 


CRYSTALS 
Microprocessors  Timebases 
TV  Games  Precision  Crystals 


Frequency 

Case 

Price 

Frequency 

Case 

Price 

1.000  MHz 

HC6/HC33 

4.95 

13.000  MHz 

HC18 

4.95 

2.000  MHz 

HC6/HC33 

5.85 

14.31818  MHz 

HC18 

4.95 

2.097162MHz 

HC6 

6.95 

18.000  MHz 

HC18 

4.95 

4.000  MHz 

HC18 

4.95 

20.000  MHz 

HC18 

4.95 

5.000  MHz 

HC18 

4.95 

32.000  MHz 

HC18 

4.95 

6.000  MHz 

HC18 

4.95 

lOOKc 

HC13 

12.95 

10.000  MHz 

HC18 

4.95 

3579.45  Kc 

HC18 

4.95 

*  Exar 


*  i  m.^-i  irj-j  rji  »i  I  iha  ton  k 

Fu.M.1  -PI  lir^ijIU,  Fl.l  ^brikVM  ll.lT^-f 


*  TIMING  CIRCUITS* 


*  COMMUNICATION  CIRCUITS  * 


XR555CP 
XR556CP 
XR2556CP 
XR2240CP 
XR120P 


.90  XR1488 
175  XR148 
2  95  XR220B 


*  PHASE  LOCKEO  LOOPS* 


*  STEREO  OECOOERS* 


XR22HCP 
XHS67CP 
XR25567CP 


XRt310P 
XR1310EP 
XR1800 


*  FUNCTION  GENERATORS* 


♦OPERA  TIONAL  AMPLIFIERS* 


XR742CP  2.-oC>o«i" 

XR4S5BCP  D>«H.b 

XR4136CP  j.toi 

XR4202CP  P,o,im^, 


2708  PRIME 


only  $49.95 


Build  Your  Own  MONITOR 

Now  in  Stock  -  NEW 

M3000  •  100  12-inch  display  module  $229.00 

M2000  •  155  9-inch  display  module  $208.00 
*Add  $10.00  Shipping 


MOTOROLA  Exorciser,  MEK6800DI 
and  MEK6800D2  Compatible  Modules 

$175.00 
$  72.00 
$  36.00 
$350.00 
$375.00 
$350.00 
$390.00 


9601  16  Slot  mother  board  -  Inc.  Conn. 

9602  16  Slot  card  cage  19"  rack  mount 
9610  Utility  Prototyping  Board 

9615  4K  Eprom  Module  (1702A) 
9620  Parallel  I/O  Module 
9626  8K  Static  Ram  Module 
9650  8  Channel  Duplex  Ansyn  I/O 


All  assembled  and  tested.  Not  Kits 


"MISCELLANY 

UCOVAl'IFAH  1  I' 


■■I-  v  *  i(h-—  'IrH 

«  ililTi-  -    «ll  M 

;C*t^- •iKk 


KEVB04H.D 
lf^n<lt         FOR  Tl  LIPmOME 


Only  .95 


|pV     CLOCHE  CHIPS 

MM5313  78P.I.S04-U 
MM5314  ]<P.«CDt<i 
MM5316  if'.:  i  40INO  A.jim  l«oo. 
MM5375  Owk  O.o 


J»-.i  lie  JM.  fdk  "MDX.         Auu  LF 

o*fLV  in  k  urst  hme  QfiE^ca 


'VARIABLE  RESISTORS 


2550 
55100 
105500 
505  up 


If  CORCOM  EMI  FILTER  ROTARY  SWITCH 

4  COriLDW  7m  f  a      Qhhr    U  K  Cm,jut,  PA  2001 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  62 


INTERFACE  AGE  117 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


028E 
0290 
0292 
029<l 
029S 
0297 
0299 
0298 
0290 


3030 
3030 
46u3 
04 

0D0A 
0000 
0000 
5331 


605 
606 

co ; 


627 
628 
629 
630 
631 
632 
631 
63U 
635 
636 
637 
638 
639 
640 
641 
692 
693 
699 
695 
696 
697 
698 
699 
650 


6S5 
656 
65? 
65B 
659 
660 


029E     BO  0900  ! 

02*1  16 

02A2     00  0900  1 


02AS  36 

02A6  37 

02A7  30 

02A8  C6  02 


02AE 
02AF 
02B2 
0285 
0206 
02B7 


NEXT  2  U1GITS  — 

Rfc  AO  nExT  2  CHAR  FwOM  IIY  TAPE  AND  CONVERT 
(U  mEX  NUMBER  IN  A  MEG.     UPDATE  CKSM. 

wt turn  upoated  Cksh  in  b  reg. 


NtxT20       EUU  ■• 

JSR  hAITTy 
TAB 

JSH  KAITTr 

i  SET  uP  P AH AmS  FOR  CONVERSION  ROUTINE, 

*  PUSH  ASCII  CmARS   INTO  STACK.  POINT  X  AT  STACK. 

*  SIT  AsTYPt  Uf  CONVERSION  AMD  Ban  OF  CmAHs  TO  CONVERT. 


LOA  6 

SUUH 
bCC 


UPDATE  CKSH 


RESTORE    STACK  PTR 


NEXT  AOH  IBUt-PIR/  ADR} 

SET  AOXiO  OR  WEXT  NUMBER  STRING  STARTING 
AT  BUFPTH 

LEAVES  bUFPTR  AT  C R . OEL I H IT ER, OR  FIRST 
CHAR  BE InEEN  G  -  I  . 
LEAVES    (A)s   LAST  CHAR  SCANNED. 
LEAVES  CB)«  LS  BYTE  OF  ADR 

Rt  TURNS t  C 


0286 
0288 
028E 
02C1 
02C3 


02Cu 
02C6 
02C8 
02Cfcl 
02CE 
02DI 
02D3 
0205 
0207 


02BB  I 

7F  FFOA  A 

7F  FFDB  A 

BO  0385  I 
2b  01 
39 


FF  FF  E0  A 
til  FFOA  A 
F7  FFOU  A 
Ab  00 


EQU  i 

CLR  ADR 

CLR  ADRtl 

JSR  PXISTS 


ADR  1 1  0 

IS  THERE  A  PARAMETER? 
YES 

RETURN  H/HQ  PARAM  CC=2 


i  SET  UP  PAHAHS  FOR   ASCII   TO  HEX  CONVERSION 

MAX.    CHARS    TO  SCAN 


LOA  A 

SUB* 

acs 

HIS 


C0NH8 
8UFPTR 
AOR 
AOHtl 


SAVE  RESULT 


667       0208     7E  QUAD  I  NA3 


Bits  and  Bytes 

COMPUTER  SHOP 

IN 

PHOENIX 

AFFORDABLE  —  OFF  THE  SHELF 


WE  FEATURE  the  EPA  MICRO-68  and  EPA 
Expanded-68  microcomputers.  These  fine  systems 
are  based  on  the  popular  Motorola  6800. 

WE  FEATURE  the  Micro-Term  ACT-I  keyboard 
and  Sanyo  high  resolution  Video  Monitor  as  a  TTY 
replacement,  for  the  lowest  possible  cost  CRT. 

ALSO  ...  we  sell  a  full  line  of  EPA  boards  and 
gcomputer  peripherals  as  well  as  a  large  selection  of 
books  and  magazines. 

OPEN  EVENINGS  AND  WEEKENDS 

6819  North  21st  Avenue 
Phoenix,  Arizona  85015 
(602)  242-2507 


67S      02DB    A6  ( 


6B8 
689 
690 
691 
692 
69J 
69U 
695 


758 
759 
760 


CIRCLE  INQUIRY  NO.  39 


815 
816 
817 
61S 
819 
820 


625 
626 
827 
828 


i  OUTCh  *  PRINT  CHAS  IN  A 

>  uutchx  *  print  Char  at  mEh(x) 

IF  OIAK  *   'CR'.  FOLLOrt  WITH  LF  l 


OUTCHX       LOA  A  0,x 


0200 
02DE 
02EI 
02E2 
02E4 
02E7 
02E9 
02E8 


F6  FBCt  A 
57 

24  OA 

F6  FBCF  A 

CI  IB 

26  05 

7E  00AU  I 


OUTCM         EQU  ■ 

i  first  check  for  esc 
psh  b 
LOA  b 

asr  e 
ace 

LOA  II 
CMP  tt 


A  C  I  AS 


02EE 

02F0  Bl  00 

02F2  26  OE 

02FU  86  OA 
02F6 

02F8  HIF 

02F9  C6  04 

02FB 

02F0  5A 

02FE  26  FB 

0300  86  00 


OC10 
ACIAO 
•  ESC 
OC10 
ABORT 


3UBR  PUTA 
CHP  A  «CR 
BNE  0C20 


BNE 
JMP 


LOA  A 

SUBH 
CLR  A 
LOA  6 

*  BEGIN  LOOP 
OCLOUP  SUBR 

DEC  B 
BNE 

*  ENO  LOOP 

LOA  A 


ACIA    INPUT  STATUS 
CuRORF 
NO  INPUT 
READ  ACIA 

NOT  ESC 


POINT  CHAR 
NOT  CR.  RETURN 
PRINT  LF 
PRINT  4  NULLS 


UC20 


PUL  b 


PRINT  CH.LF  # NUL  L 


OUTCM  PRINTS  LF  AFTER  CR 


:  PUNCH  AODL.AUOH 

PUNCH  mEHOky  CONTENTS  BETnEEN  AOOL  I  AODH 
IN   HEX  FORMAT 


030B  HO  0160  I  PUNCH 
0308 
030E 
031  1 
0313 
031S 
011B 


FF   FFDB  / 
60  AS 
27  06 
FE  FFOA  I 
FF  FFOB  i 


BSR 
BEO 
LOX 
STx 


GETRNG 
•  0 

OFFSET 
NXTADH 
PhF  1  5 
AOH 

OFFSET 


HE AO  AOOL  I  ADOH+I 

ANY  OFFSET? 

NO. 

YES. 


734 
735 
736 


i  PUNCH  DATA  HLCOROS  UNTIL  AOOL  -  AODH 


CALCULATE   UATA  LENGTH 


031B 

F6 

FFOF 

A 

PHF  20 

LOA  b 

ADOMtl 

031E 

FO 

FFOU 

A 

SUB  b 

ADDL+1 

0321 

86 

FFOE 

A 

LOA  A 

AODH 

0324 

B2 

FFOC 

SBC  A 

AOOL 

01,27 

26 

0*1 

BNE 

PUiYOlO 

0329 

CI 

1L 

CMP  0 

•  30 

032B 

23 

02 

BLS 

PUN020 

0320 

C6 

It 

PUNO10 

LOA  b 

»30 

0  32F 

5C 

PUND20 

INC  B 

0330 

5C 

INC  b 

0331 

5C 

INC  B 

0332 

F7 

FFE3 

A 

*STA  B 

COUNT 

0335 

CE 

0295 

I 

LOX 

•MCRLFS 

0318 

SUBH 

PMSG 

035A 

5F 

CLR  B 

0336 

CE 

FFE3 

A 

LOX 

•COUNT 

0J3E 

80 

m 

BSR 

PUNBYT 

0340 

37 

PSH  6 

0341 

FE 

FFOC 

A 

LOX 

AOOL 

034u 

B6 

FFDB 

A 

LOA  A 

OFFSET 

0347 

F6 

FF09 

A 

LOA  6 

OFFSET* 

03flA 

SU8R 

AOOABX 

03«C 

FF 

FFOA 

A 

ST  x 

AOR 

034F 

CE- 

FFOA 

A 

LOX 

■  AOR 

0352 

33 

PUL  6 

0353 

80 

IF 

BSH 

PUNBYT 

0355 

80 

ID 

BSR 

PUNBYT 

0357 

FE 

FFOC 

A 

LOX 

AOOL 

*  PUNCH 

BYTES  FROM  MEMO 

*  BEGIN 

LOOP 

035A 

60 

18 

PHtClO 

BSR 

PUNBYT 

035C 

2E 

Ft 

BGT 

PREC10 

MIN(30.  ADOH+1-AOR) 
B I  ■AODM-AODL 


OIFF  .GT.30 


COMPUTE  OFFSET  ADORESS 


PUNCH  FROM  AOR  ' 


(INCREMENTS  ) 


IF  CUUNT=0) 


035E 
0361 
0364 
0365 
0367 
0369 
036C 
036F 


FE  FFUC  A 
BC  FFOE  A 
26  AA 


COM  B 
STA  B 
BSR 
LOX 


787       0371     7E  0041  I 


802 
803 
804 
605 
606 


0374  EB  00 
0376 

0378  7A  FFE3  A 

037B  39 


0,X 

PUNBYT 
AODL 
AOOM 
PHF20 

MONEN1 


PUNBYl    (MtM(X) .COUNT/ChSmJ 

PUNCH  BYTE  AT  MEM(X)  ANO  ADJUST  COUNT  AND  CkSm. 
CCsZ   IF  COUNTsO 


ADD  B 

SUbK 
DEC 


P4HEXSI     PH1NF  2  BYTES  AT  X  AS  4  HEX  ChARS  t  2  SPACES 


PS>itl---HMM    1  ItLiNv 


0380 
0JB2 
0384 


h  space     loa  a  iblank 
subh     put a 

RTJj 


PARAM  EXISTSIBUFPTR) 


INC  BUFPTH  UMIL  CHAR 
LEAVE  A  a  MkM IBUFPTR) 
SET  Z   IF  NO  PARAMETER  EXISTS 


{•BUFPTR]   i  BUFPTR 

(X)    *  BUFPTR 
ALF'HA  OR  CR 


0365  1     PXISTS  EOU 


ENTRY  FOR  (•BUFPTRJiBuFPTH 


118  INTERFACE  AGE 


FEBRUARY  1977 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


0388 
0J8A 
03BC 
038E 
0390 
0392 
0J9J 

039$ 
039a 
039A 


25  07 
81  00 
27  03 


LDx 

PxISTX  tUU 
■BEGIN  LOOP 
PJtl  UD«  ft 

8U8H 
BCS 
CMP  A 
BEU 
INX 
BRA 

•END  LOOP 
PX2  STX 

CMP  « 
RTS 


ENlRY  FOR  (X)  =  8UFPTR 
IS   CMftR      ALPHANUm  ? 

yes,  Exit  loop 

IS   CMftR    CH  7 
YES.    EXIT  LOOP 
^OvE  TO  NEXT  ChAR 


3kt   Z   IF  NO  PARAMETER 


ROF90  0390  I* 
RT20  OObb  1 
RUS10  0112  1 
SETMEm  03CC  I 
3*  03E3  I 

3REG  FFF2  A 
SnI20  OOCC  I 
ShIhan  OOBE  1 
vFt  0004  R 
1A1TTY  0400  I 


HON90  03A7  I* 
R!3u  00e>9  1* 
SAVtSP  FFE5  A* 
SETOFF  03AF  I 
SM10  03tC  I 
START  0000  1* 
Sfll30  00D1  1 
SMVEC  FFfA  A 
MO  0400  I 
xRtG       F  FEE  A 


RSHSH  0000  R 
RT90  OObC  I* 
SAVE*  FFE7  A* 
SETOUT  03CU  I 
SM30  03FD  I 
START1  0007  I 
SnlaO  0008  I 
TCOUNT  FFEA  A. 
*20  0U09  I 


ST10  005F  I 
RU80UT  007F  A 
SETMl  03E2  I 
SETPUL  03C8  I 
SMS  03E6  I* 
SuBxAB  000b  A 
S«150  00D6  I 
US«I  FFFU  A 
«30  0"hS  1 


CHECKSUM  3  075E 


RDR  OFF 

TUHNS   TAPE  RDR  OFF: 

ACIA  RTS   J/P  HIGH 

ALIA  Char     S13  (0C3J 


'Id  t^HUJSH     *M  a*"MIiC5.    THIS  *:.5i.«h.i 


039B 
0390 
03A0 
03A2 
03A4I 


039B 
8b  01 
B7  FbCE 
8b  13 


RDKUFF        EQU  A 

LOA    A  «J01 

K I J  F  9  0  STA    A  ACIAC 

LOA  A 

SUBH  PUTA 
RTS 


RTS  HIGH 

SET   ACIA  COnT  REG 
SEND   TT Y   HOR  CONT  CHAR 


I  UI/04//6     9:2b     PHU*  BUHNEH   ADDITION    TO  PHOTO 

LOC       OBJtCT     m     SOURCE  ST  A  TE  MEf«T 


868 
869 
870 
87  1 
872 
873 
874 
875 


878 
880 


03A5 
03A7 
03AA 
03AC 
03AE 


03AF 
0380 
0363 
Oidb 

oiba 

03BA 
OiBO 
03C0 
03C2 
03CU 
03C5 
03C7 
03C9 
OiCB 

03LC 
03CE 
0300 

03U2 
0  305 
Oiud 


22  OA 
Bb  Frot 
Fb  FFDF 


20   1  / 
32 

OiCC 


FF  F  F  OA  A 
CE   FFOA  A 

BO  CI 


RDR  ON 

TURNS    TAPE   READER  ON 

ACIA  RTS  0/P  LOW 
ACIA   CHAR      111  (DC1) 


03 As  I 
8b  4l 
B7  F6CE  A 
86  1  1 


I  StTUFF 


ACIAC 
'  «Sli 

PUTA 


BHI 
LOA  A 
LOA  a 
SUBH 
BCC 

.ETUUT  PUL  A 
LOA  A 
SUBH 
BRA 

EH'UL  PUL  A 
iETMEM  EOU 

STA  A 
IMP  A 
BEU 
VERIFY  ERROR 
SU 


LDX 
oSR 
BSR 

PbtUH  LOx 

JlWP 


ADUL 

ADOL  ♦  1 

SUBXAO 

SETOUT 

ALh)M 

ADOHtl 

SUBXAB 

SETPUL 

•  255 
PUTA 
SETMl 


AOR 

»AOR 

ROROFF 

P<tnExS 

smBaOR 

MSGABT 


RTS  LOW 

SET  acia  cunt  REG 
SEND  TTY  RDR  CONT  ChAR 


Ib-dIT  SUBTRACT 
TOO  LOW 
HIGH  LIMIT 


OUTSIOE   RANGE  LIMITS 
TYPE    DELETE  (HUBOUT) 
TO  SIGNAL    FACT    TO  USER 
OTHERWISE   IGNORE  STORE  REQUEST 


SET   PARAM  FOR  PuhEX 


TITLE     PROM  BURNER  ADDITION   T.J  PROTO 
P)<Om  BURNER 
VERSION  2.0  01/08/76 

tttPfWiBAf  l%tn  if   i«t.Kli^  "JC*Ji»jHt*i  1nch 

Aijit^uL-  uri  tons 


EUU 

EOU 

OPT 

1SEL 

ORG 

RE  F 

REF 


MONENT.GETRNGiNXTADR.PXISTS.RNGERR.PBAOK 
PCRLF.PST' ACE.SE  TMEm,  A90HT,M0N1TR 
Pf DM AO, ADR. AOOL.AODH, COUNT 
BURN.MliVE  .REAO.YFY.PINI  T 


i      P1A  LJCAIIUNS: 

FBCO  A  t>  I A  E.QU 
0001  A  V50  EQU 
0004    A      f'RUH  EOU 


H'FbCO 
H'F8C1-PIA 
h'  F8Ca-Pl» 

l  BUFFER  {DEFAULT! 

H'FCOO 


•      STANDARD  R • 
=  l»  EOU 

TrRt         macru  Char 
IF  Char  o 

LO  A  A  «CHAH 

1ENO 

CALL  HK1NTA 
M£NO 

CALL  MACRU  ITEM 


SM     AOH   BtIEI  ,Btt£2.  .  .  . 


RSkSR  CALL  LOCATIONS 


928 
929 
930 


bO  02bo  1 

27  OL 

FE  FFUC  A 


03EF 
03F1 
U3FU 
03F5 
03F7 
03F8 
OSFb 


OiFO     7E   O0U7    1  a*"Jk 


OUOO 
0U02 
0'IOU 
0U06 

oyo9 
OUOB 

0400 
OalO 
0U12 
oai5 


81  IB 
2b  03 
7£  OOAD 


70  FFE'V  i 
27  03 
BO  t2uD 


N  x  T  ADR 

S«30 

At)OL 


AOR:=  NEXT  PARAM 
SAVE    AOR    IN  AOOL 


AtiR :  :    NEXT  PARAM 
END  OF  LINE.   ExlT  LUOP. 
x :=  ADO  TO  BE  SET 
a:=ls  byte 
memIx):=a,  VERIFY 
MOVE   TO  NExT  ADD 


Initialize  pkum  burner  pi 


fVA  I  T   \  UR    TTY  ILHAR.ECmO)      («ECH0)  =  EChj 
RETURN  fitXT    TTY   ChAR    IN  A 
IF    <«ECnOJ  NOT  0  .    ECHO  Char 


U«00    1      n  A I  1 T  Y 


EDU 


*LO0R  UNTIL    1MJUT    .NE.  RUBUUT 


SUbR 
CMP  t 
BNE 
JMP 
CMP  / 
BEU 


•END   UNTIL  LOUf' 
tST 
BED 
JSR 

W30  RTS 


GETA 

"ESC 

H20 

ABORT 

•RUSOUT 

nlO 

ECHO 


YES.  ABORT 
HUdiJuT  ? 

YES  CONTINUE  L00»' 


SYMSOL  TABLE: 

ABORT  OOAO  I 

ACIA I  FFFb  A 

AOOL  FFDC  A 

BAD  I NP  OOAO  I* 

80S  FF8F  A 

6T1  02«D  I 

chEksm  one  i 

CR  0000 


A  C I  A  A      0005  I 

ACIAS     FBLE  A 

AOR  FFOA  A 

BAOTAP   02U2  I 

BREAK      0002  I 


OOAD  I 
OM10  0138  1 
EOF  015D  I 
FS10  0255  I 
GETRG3  018<J  I 
IRQvEC  FFF8  A 
LHF2  0100  I 
LOAD  01A0  1 
MCSER  027  8  I 
MONENT  00 Ul  1 
MQUES  0273  I 
MTAPER  02dl  1 
NMlvEC  FFFC  A 
0C10  02EE  I 
OUTCh  02DO  I 
PHHEXS  03  7C  I 
PHF20  0318  I 
PR  10  OOFS  I 
PREGS  OOEE  I 
PUN8YT  037K  1 
PUTA  00  11  A 
PXISTX  0388  I' 
READ       UOOi  R 


FF90 
FFER  A 
FFEB  A 
0082  I 
013E  1 
000 U  A< 
01AA 


BuF 
CKSM 
CREG 
OLIO 
DM20 
tOT 
G10 

GETRGU  U19V  1 

LAST  FFFF  A« 

LHF3  0213  I* 

LUUFST  OIBb  I 

MEOF  026F  1 

MONl  TH  00«?  I 

MRNGER  0265  I 

N  A  1  02C1  I 

NULL  1  016U  I 

0C20  0302  I 

OUIChx  020B  1« 

PdAOR  030L  I 

PINII  0005  R 

PR20  0HJ2  I 

PRUMAD  FFH6  A 

PUNCH  03ob  i 

Pxl  0388  I 

KOPRE  01E0  I 

RECTYP  FFE2  A 


ACIAC     FBCE  A 

AOOABx  0008  A 

ALPNUM   0013  A 

BASE        FF90  A 

BREAM   0087  I 

BUFPTR  FFEO  A 

CONHd     U015  l 


LSI 

OLOOF' 

OM50 

ESC 

GETA 


0129  1 

007A  I 

015A  I 

OOld  A 
001U 


GETrfNG  0160  I 
L0R10  0217  I 
LHFii  U229  I 
MBaOR  0250  I 
MUNENl  00H\  I 
MUVE  0002  R 
MSGABT  OOBO  I 
N A 3  0208  I 
NULLS  0162  !• 
UCLOOP  02F8  I 
P2HEX  OOOF  A 
PCRLF  030U  I 
PMSG  0012  A 
PHEC10  035«  1 
PRTXO  0009  A* 
PUND10  0320  I 
PX2  0395  I 
RORQFF  039B  I 
RES?**  t 1 OC  I 


ftClftO  FBCF  A 

AD Dh  FFDE  A 

AREG  FFEO  A 

BLANK  0020  A 

BREli  FFEC  A 

BURN  0001  R 

COUNT  FF£3  A 

C  T  AfjLE  008C,  I 

OM  0  1 3b  1 

ECHO  FFE9  A 

FINDS  0252  I 

GETHG1  OWE  I 

GO  019F  I 

LF  0  00 A  A 

LHf 9  022F  I 

MCRLFS  0295  I 

MUNEND  0  0«7  I 

MPEOF  028A  I 

MSGmON  OOBO  I 

NEXT2D  029E  I 

N  x  T  AOR  0288  I 

OFFSET  FFD8  A 

P1HEX  0010  A 

P  H  F 1 5  0318  I 

PRl  00F3  I 

PREG  FFFO  A 

PSPACE  0380  I 

PUN020  032F  I 

PXISTS  0385  I 

RDRON  03A5  I 

HNGERR  0191  I 


Oaitt) 
04a9 
0U4C 
Ou^F 
0U52 
0"»55 
0U58 
0U5A 
0450 
0460 
QUbi 

04b9 
046b 
04b£ 
0471 
0474 
0«75 
OU77 
0a79 
047B 
0470 
047F 
0481 
0483 
0485 
Out)? 
0489 
0488 
048C 


Bb  38 

A  A  01 

A7  01 

8b  3A 

A7  05 

A7  07 


0419 
0418 
0410 
041F 
0421 
0423 
0425 
0427 
0429 

U42b 

0u20 
042F 


0431  36 

0432  80  OF 
0UJ4  32 
Otl3S  Cb  08 
0437  49 
043S  3b 
0439  06  16 
04JB  '19 
0«3C 


0U30 
0u3E 
043F 
OtluO 


LDX 
LOAA 
i  JRAA 
STAA 
LOAA 
STAA 
STAA 
CLR 
CLH 
C0>< 
LDAA 
b  I  A  A 
HT3 


■  PIA 

•  8 ' 00  1  1  1  000 

V50.X 

V50.X 

•B'OOl 11010 

ppaM*i,x 

PRO^t-3,  X 
PR0M*2,X 
PH3M.X 
PRJM, X 

•9'ooiniio 

PROM* 1 , X 


TURN  OFF  50V 


R/rt    TO  READ 

(HOPE  NO  OOUbLE-DRlvE  HERE) 
PROM  DATA   SET  TO  INPUTS 

SELECT    ADDRESS  AS  OUTPUTS 

POINT   TO  AUORESS  OUTPUT  REG. 


TYf'E    A    IN    BINARY,    ENCLOSED   BY  St-'ACES 


0443      7E    0007    R  t'SP 


PSHb 
PShA 
BSR 
PULA 
LDAB 
HOLA 
PSHA 
L(JAA 
HOLA 
TYPE 
IF 
LOAA  ■ 
1ENL) 
CALL 
3«I 
BYTE 
PULA 
OECB 
aNE 
PULB 


SAVE  B 

PRINT  LEADING  SPACE 
8  DIGIT  COUNTER 


PRINT  ONE  MORE  SPACE 


RAM/PROM  AOURESS  SETUP  &  VALIDATION 


CE  FCOO  A 
FF  (JDOO  H 
CE  FEOO  A 
FF  OOOE  R 
7F   UOOF  H 

80  0003  R 
27  Ob 

BO  0U01  H 
7C  OOOF  H 
FE  0000  R 
FF  OOOB  R 
BO  0002  R 
27  06 
FE  OOOC  H 
FF  UOOB  H 
CE  OOOB  R 
00 

Eb  07 
E2  05 
Ab  Ob 
A2  0« 

81  02 
2C  08 
EB  01 
A9  00 


7E  0004  R 


STX 

CLR 

JSR 

BEO 

JSR 

INC 

LOX 

STX 

JSR 

BEQ 

LOx 

STx 

LUX 

SEC 

LDAB 

SBCB 

LOAA 

SBCA 

CMPA 

BGE 

ADUB 

AOCA 

EURA 

4N0A 


URAM 
AOOL 

•RAM+512 

ADOH 

COUNT 

PXISTS 

:A1 

GETRNG 
COUNT 
ftDOL 
PROMftD 
N  X  T  AOR 

:A3 
ADR 

Pr0«aO 

■PRJMAO 


INTITALIZE  POINTERS   TO  OEFAULT  RAm 


DEFAULT   PROM  AOORESS 
IS  SAME  AS  START 
TRY    FOR   PROM  AOORESS 
NO. 


VERIFY    THAT  RANGE  <=  512 

(FORCE  BORROW) 

=ADDn*l 

=A0DL*1 


SrtUULO  BE    1    OR  0 
TOO  BIG. 

ALSO  SHOULD  NOT  OVERSTEP  PROM 


IT  DOES. 

ADDRESS  RANGE  ERROR 


1YPE  RAm  &  ROM  ADDRESS  &  DATA 


FEBRUARY  1977 


INTERFACE  AGE  119 


SOFTWARE  SECTION 


MICROCOMPUTER  DEVELOPMENT  SOFTWARE 


206 
207 
208 
209 
210 
211 
212 


22o 

225 
226 


0«8F 
0o92 
0492 
0u91 
**** 

(NO 

o«Ai 

0oA5 
0UA7 

ooA9 

U  0  0  9 
OuAA 
OOAd 

y«A£ 
undo 


UUB2 
0OBS 
0UB7 
lIuUA 

uubC 
OoBF 
0uC0 
0XC1 
0UC2 
0«C5 
U«C5 
0«C7 
0«C* 
OoCB 
OuCU 


OuCE 
QHD1 
0*03 

ono5 

0UO7 
0«l>9 


anot 

0OE0 
0«E5 
OoEd 
OuttJ 


OoEa 

quid 

OOtE 

OuFl 

(JuFU 
OilFS 
0uh8 
OOFB 
0«FU 


0500 
0502 
0505 
0507 
0509 
050A 
050C 
0500 
050F 
0510 
0511 


05U 
0517 
051A 
OSlC 
051F 
0521 
0525 
0526 
0528 
052A 
0S2C 
0S2E 
052F 
0  5  31 
05ii 
0515 
0537 

!}5J9 

0S5B 
055l) 


if  I 
10 

FE   OOot)  H 
Ab  OH 
80  95 

86   FbC.6  A 
80  90 
CE  OOUo  H 
Ab  01 


27 


05 


LUAA 
dSH 
LUAA 


LUA* 
ASLA 

WIS 


P8d  1  N 

PR0Mf2»PlA 

P881N 

BP30MAD 


POHEX 

pi;rlf 


IrPE  ram  ADDRESS 


TmEN  PRO*  DATA 

•vOw  IF  AOOHESS  ILU*  8) 

dues  i. or  mmo  ram  address, 

=  AODL 

>»HInT  PROM  ADDRESS 


E<M   t-Jn  fin, 


■  kHOM  ADDRLSS  SETUP  &  DATA  Rt AO 
A(;0«S 


B?  FBCo 
Ab  00 
CE  FbCO 


A8  0/ 
do  OL 
A 8  07 
a;  0  7 


80  20 

2o  02 

80  3A 

80  11 


80  0*ue  1 
80  U2 
ft  0000  R 
ttt)  0O08  H 
80  02 
20  Fa 


FF   OUUO  H 
8C  OOOt  R 
2b  85 
7E  OOOA  n 


LOAA 
SIAA 
LDAA 
LUX 
ASLA 
lnCA 
"  S  L  * 
ASLA 
EURA 
Af,UA 
EURA 
S  T  A  A 
LOAA 
KTS 


crPRO-AD 
1  .  X 


PRDM* J, x 
PR0m*5,x 
PROMf 2,x 


JSk  RASV 

bSH  VFY1 

bCC  !N 

8SH  JVER 

8SR  INCAD 

8RA  :v 


LG"  0  81TS 
MIGt(  BIT 


INSERT    1NTU  CONTROL 


READ  DATA 


GO  SETUP  ADOHfcSSES 
VERIFY  OmE  LOCATION 
SO  ERROR,   OH  PRINTED. 
PRINT  FIXABLE  ERROR. 
INCREMENT  ADDRESSES 


PROM  READ 

.At  JSR  RASV 

BSR  AOORS 
LDx  4QDL 

JSR         SET^EM  STORE  IN  i 

BSH  1NCA0  NEXT  t 

:R 

INCREMENT  RAM/PRO^  ADDRESS  POINTERS 


STx  ADDL 

CPx  ADDh 

8NE  AOORS 

ill  .JMP  M0N1TR 

PRO*  OAIA   VERIFY,  ONE  I 

U  dSH  ADORS 

LUX  AOOL 

CmPA  o.X 

6Eu  ;x 
COMA 

ORA A  o,X 
COMA 
BNE 


EXIT    10  MONITOR 


7E  OoBF    1  JVER 


IjvCA 
8T3 
JMP 


FROM  BUHNER  ROUTINE 


80  Outlb  1 
70  OOOF  H 
2b  18 
7F  0O0b  R 
80  91 
2b  75 
CE  uoob  R 
eC  01 
26  F5 
oC  00 
Ab  00 


60  C5 
29  CO 
FE  OOOU  f 


BNE 

CLR 

8SR 

BNt 

l.UX 

INC 

dNfc 

INC 

LOAA 

RUHA 

dCS 

CLK 

BRA 

BSH 

LDAb 

BSR 

BVS 

LQx 


PROmAD 
AOORS 
NOGOQD 
•PrOmAO 


NO,     TYPE  ERROR 


DO  BLANK  CHECK 


AHA         If    IS.V  T 

1'iOifc.  «EfjNJROM  AtJORESS 


ADVANCE   H  NEXT 
SET   TRY  COUNTER 
CHECK    THIS  L0CAT1UN 
CAN'  T    F'ROliRAM    |    TO  0 


Vectored  from  page  108 


A0D2 
B 

HMIN 

CFCHE 
COPT 
CST  R 
04DD 
DEC  P  T 
01  VIT 
DTS  r  2 
FP1 
F  INI  T 
FXL  1 
GFTA 
r.OUN 
INCR? 


L003 

LDlV 
LHUL 
LXFR 


0007 
09DF 
0000 
3A22 
OB^.C 
0OF<. 
0C71 
0B06 
0EA6 
00C6 
0912 
OFOF 
OODA 
OA32 
00A1 
093B 


)035 
0  A'iH 
095T 
0900 
0A5F 
0C24 


MOL  T 
NNZRr) 
NZRD 
OUTR 

psw 

REP5 


TEN 

TOP 

TST  1 

TSTR 

USFIT 

HOVR 

ZCHK 


0F70 
OC82 
OCCF 
OFFD 
0006 
')f.26 


0E1F) 
0F78 
OCFB 
0FJE7 
OFBD 
0B71 
OAOA 


A8CH 
ADD? 
RBCH 

Ch  AR2 
COPY 

crwn 

OFCR 
OLST 

F 

E0J2 
F  INUP 
FX12 
GE  r  F.  X 
fjOT  V 
INC*  3 
INP 
I  NT5 
L  D  )  J 
I  12.1 
LAOS 
LL  TR 
LHOP 

HUL  T  T 
NORM 
OFLWI 

nv?p. 

PTVAL 
REJ>6 
SCHAR 
5P 

TtN5 
TRY  1 
TSTB 
THOO 
WCHAP 

ZMCHK 


SYMBOL  TAHIF 

0A3<. 
0')D6 
0A3P 
)i31 
0F40 
0C02 
ODE  3 
OBI  D 

0AE9 
0003 
J99C 
ODdA 
OAR  3 

one  t 

0CF8 
DfJC3 
OFF  A 
0F5F 

OA/,  E 
0962 
097F 
ODE  5 
30  )fc 
0F67 

oor.o 

0051 
OA  AD 
0fl76 
0C1  7 
or<>  7 

'3AB9 
OACB 
0006 
OF  I  7 
DCF6 
3C  )B 
ODCC 
0R9F 
0B63 
OADA 


AC  PR 
AORS 
BChk 

CCM1 
CR  IN 
CVRT 
DCMP 
OF  ,<L 
DRST 
ENT1 

iauL 

FLOAT 
GCHAP 
G€  TN 

INUF  1 
IN  PHP 
INTR 
L001 
L129 
L  A  SO 
LMCM 

L  s  r  T 

M  ADD 
MCHK1 

M(1R0 

Nl 

NO  PHI 
OFLHC 
PLSV 
READ 
SAVFN 
SH10 
STCPC 
TL  OPP 
TRYP 
TSTEX 
UFLWI 
HINO 
H7FR 
ZPOtT 


0E1  E  F 
OKE  1 
DAF2 

OA  16 

09M) 

0C9A 

OaF'. 

3ft  CE 

0AF8 

Or  10 

Of»<H  > 

0A05 

OM'tl 

OF  2A 

00  0 

■J\  B'« 

002^ 

0A7F 

OA'.H 

OA  5  1 

3A32 

OA  5  7 

0LW9 

3A  M 

OF68 

0-1A6 

Of-  51 

OA  AF 

3C  5B 

009C 

OODB 

OF  19 

098C 

3C5  3 

On  7C 

0FE2 

3E  36 

0flG8 

0B7F 

0B8D 

Of-  30 


30  u 

CCMl> 

C  >M2 

CSIGN 

0 

0CO1" 
DI  on 
0SU!1 

TLT  SO 
OCHR 

INCH 

INPUT 
Kf'GO 
L302 
L13L 
LDCf> 
LMCP 
LSU3 
MA  NT 
MDGN 
f  SFH 
NCHK 
NOT  3 
OKI 
POPO 
PEP3 
SCALE 

Shift 
sunz 

TLP2 
T  q  Y  TN 
T  STN 
UFL/JC 
WMAMT 

wz:rc 


onnF 
Of  55 
3CB0 
3B5iJ 
0A23 
0C6'1 
0002 
0F3A 
)f330 

nti2o 

OCOA 
OE  IF 
0F15 
)  □  A  ) 

0Bli6 

0E21 
')A7(. 
OA  IF 
0A5't 
3C39 
OC',0 
0963 
)9EF 
0D03 
0C79 
09B*. 
39.\A 

0D22 
•39  2  7 
0E-i3 
0F80 
39B9 
C070 
0F6F 

jrt  7 

0Cf>2 
0P98 
OBAF 


227 

0500 

Ab 

Otl 

LOAA 

Of  x 

228 

05O2 

CE 

f  BtU 

A 

LUX 

f  PIA 

229 

05uS 

A7 

STAA 

PH3«*2, x 

250 

05u7 

Ab 

05 

LDAA 

PRJM* 1 , X 

251 

0509 

8o 

F  I 

AMOA 

*8' 11110111 

S6I    H/A    TO  » 

252 

0508 

A  7 

05 

SIAA 

PR3M  •  1 , x 

235 

05OD 

Ab 

07 

LDAA 

PRDm+J, x 

TURN    IT  ARC10ND 

25« 

OSUF 

6o 

FB 

ANDA 

«8' 11111011 

CTO  OUTPUTS) 

255 

0551 

A7 

u7 

STAA 

PR3Mt5.x 

25o 

0555 

6F 

Ob 

CLR 

F  k3«*2.  x 

257 

0555 

05 

Ob 

CLM 

PUO^+2. x 

258 

055/ 

57 

F'Srib 

2  59 

0558 

Cb 

1« 

LUAd 

«20 

2k0 

055A 

du 

3f 

BSH 

^SEC 

CLEAR    1 1  MEM 

2«l 

055C 

80 

BSH 

MSEC 

I T    1   MS  BETWEEN  PUI.SES 

2«2 

0556 

Ab 

0  1 

LOAA 

V50,  x 

205 

05b0 

HO 

F  / 

ANOA 

»  B  1  1  1  1  1  0  1  1  1 

St!    HIGH  VOLTAGE 

2uu 

05b2 

U  1 

SIAA 

V50.  x 

205 

05b« 

6l> 

5b 

BSH 

MSEL 

5  MS  PULSE  OURATION 

20  b 

U5bb 

81) 

53 

^SEC 

2o? 

0568 

80 

31 

dSR 

MSEC 

20b 

056A 

b4 

56 

UHAA 

bB'OOSI 1000 

TURN  OFF   HIGH  VOLTAGE 

209 

05bC 

01 

SIAA 

V50,* 

250 

05bt 

Sa 

UEL8 

251 

05oF 

26 

Ed 

BNfc 

kW 

20  TIMES. 

252 

0571 

bF 

06 

LLR 

PR3^»2,x 

CONvtRT  uutpuis  to  inputs 

255 

0573 

A6 

05 

lDaa 

PRJ«»  t,X 

TURN  OFF  *HlTE 

250 

0575 

84 

5o 

UHAA 

sd'OOli 1000 

255 

115/7 

A7 

0  -5 

STAA 

PR3M»1 , x 

25b 

10 

IF 

OELAY 

•OELAY 

258 

0578 

60 

It 

I., 

BSH 

«S£C 

DELAY    (B)  MS 

259 

0570 

5A 

Dt  CB 

2b0 

Or>7t 

2b 

F  d 

dNE 

:  .-. 

2b  1 

ltNO 

2b2 

0S1O 

53 

^ULO 

2b5 

0581 

l>0 

0500 

1 

JSR 

VFYI 

ChECk  11: 

2b« 

29 

BVS 

:  J 

BAD  BIT  SHOhEO  UP 

2b5 

05S6 

2/ 

AD 

dLw 

:  1 

G  1.100 

2bb 

0568 

21 

TYPE 
IF 

21 
21 

N0»    TYPE    A  NAK 
0 

0568 

8b 

15 

LUAA 
IENO 

•  21 

0  58  A 

CALL 

PR1NTA 

058A 

3F 

* 

3wl 

0588 

1  1 

BrrE 

PR1NTA 

2b7 

058C 

CE 

FbCO 

LDX 

■  PIA 

2b8 

05BF 

5A 

UECb 

«flD  tttf  *6AH 

269 

0590 

2b 

Ab 

BNE 

tL 

270 

0592 

80 

0«8F 

1 

JSR 

VERR 

271 

0595 

1 

(J 

EUU 

GIVE  UP 

272 

H  It 

7E 

0005 

R 

JBAO 

JMP 

PBAOR 

PRINT   "BAD  ADDRESS"   AND  QUIT 

275 

P5-3U 

7E 

0009 

H 

MWOOU 

JmP 

ABORT 

27« 

275 

«  UNE 

MILLlStCONU  DELAY 

276 

277 

0598 

60 

05 

MSEC 

TS1 

PR0M*1,X 

ri AIT  FOR  CA1    TO  FLOP 

278 

0590 

2A 

Ft 

BPL 

MSEC 

279 

059F 

Al 

Oo 

Cm^a 

PRO*,* 

CLEAR    IT    <«ITH    A    DATA    RE AD  1 ) 

280 

05Al 

39 

HIS 

281 

282 

283 

280 

1 

IF 

MOVER 

285 

05A2 

80 

OLiOl 

R 

JSR 

CETRNG 

GET  SOURCE  ADDRESS  RANGE 

286 

05A5 

80 

0002 

H 

JSR 

N  X  T  ADR 

GET  DESTINATION  STARTING  ADDRESS 

287 

05A8 

27 

EB 

8E0 

JBAO 

EHROH  IF  NONE 

!" 

LUX 

AOOL 

289 

05AO 

A6 

10 

LDAA 

O.X 

290 

05AF 

FE 

oooc 

R 

LDX 

AOR 

STORE  IT  WITH  VERIFY 

29  1 

0582 

80 

JSK 

SETMEM 

292 

05d5 

06 

1NX 

295 

0586 

FF 

uouc 

H 

STX 

AUH 

29« 

0589 

80 

OuFl 

1 

JSR 

INK 

COMPAHE    TL)  END 

295 

058C 

20 

EC 

BRA 

1" 

MORE 

296 

Else 

297 

M(JvE 

tliU  HAM 

298 

UNO 

END  UF  MOOUlt 


SYMBOL  IABLE: 


ABORT 


0009  R 

OOOC  K 

EXIT       O.lFl)  1 

JBAO      U5?5  1 

MOVt       05A2  1 

NXTADH  0002  R 

PCRLF      0006  R 

PROM       0004  A 

exists  oou5  h 

RNGEHR  JOOu  X 
v  F  t         0  o  C  t  1 


ADUH  OUOE  H 

BORN  05UI  I 

GEIH*G  0001  R 

JVER  0511  1 

MOvER  (pOOI  A 

P«HEx  0010  A 

PIA  FtJCO  A 

PROMAO  000b  ft 

H*«t  FCuu  A 

6t  Tie  OOue  k 

•  Ml  05  0  0  1 


AODL 

COUNT 

1NCA» 

HUNENI 

MSEC 

PBBlm 

P1N1T 

P6P 

hASv 


OOOD  R 
OOOF  R 
ODEA  1 


AOORS     0«B2  1 

OELAV     OOOA  A 

INK         01F1  1 

HON  I  T  R   0<DOA  R 

NOGOOO  0598  I 

PBAOR     0005  R 

PR1NTA  0011  A 

PSPACE   0007  R 

-'.  *  :  ■          .  "1"  I 

vt#Hi      9ttr  t 


NU  LHHOhS,      NU   AtHlilf.GS,    THIS  ASStMiiLY 


VECTORED  FROM  PAGE  101 

AGE*    DEC.    1976*  V0L.l*#l3. 


8080  AMS80 


6800  F3AFCMP 


8080  ECMSO 


AMSAT   8080   STANDARD  DEBUG 
MONITOR  BY   RICHARD  C  ALLEN 
i   JOE  KASSER  -   BYTE   If  13* 
SEPT.    1976*  V0L.2*fl. 
SUBMITTED   BY   JOE  KASSER. 

BASIC  ALGORITHMS   FOR  COMMON 
MATH  FUNCTIONS   BY  MICHAEL 
P.    BURTON   -    INTERFACE  AGE* 
JAN.    1977*    VOL. 2**1. 

MICROCOMPUTER  STOCK  OPTIONS 
BY   EDWARD  CHRISTIANSON  - 
INTERFACE  AGE*    FEB.  1977* 
VOL.2*  #3. 


BMRNG         RANDOM  NUMBER  GENERATOR 

BY  BOB  MARTIN  -  INTERFACE 
AGE*    FEB.    1977*    VOL. 2**3. 


RNDFGCST   RND   FUNCTION  GENERATOR 
CHI -SQUARE  TEST  PROGRAM 
BY   BOB  MARTIN   -  INTERFACE 
AGE*    FEB.    1977*    VOL. 2**3. 


808(3  TTMOCSR 


8080  TDOMP 


8080  MEMORY  OBJECT  CODE 
SEARCH  ROUTINE  BY  T.  E. 
TRAVIS  -  INTERFACE  AGE* 
FEB.    1977*    VOL. 2**3. 


8080  OCTAL   MONITOR  PROGRAM 
BY   THOMAS   E.    DOYLE  - 
INTERFACE  AGE*    FEB.  1977* 

uni  .s***n. 


31 -PTSL 
31-PTOD 
31  -PACK 


32-PTBL 
32-TEXT 
32-PACK 


33-PTBL  < 
33-HCBLF 
33-HCBLF< 
33-TEXT  < 

33-  PACK  t 

34-  PTAL  < 
34-PTSL  < 
34-TEXT  < 
34-HCALF 

34-  HCALF< 

35-  PTBL  < 
35-HCBLF< 
35-PACK  » 


36-PTAL  < 
36-PTSL  < 
36-TEXT  < 
36-HCALF< 
36-HCALF 

36-  PACK  i 

37-  PTAL  < 
37-PTSL  < 
37-TEXT  < 


10.00+0. 60+2.00 
3.00  +  0.  18+1.75 


.00  +  0. 24+ 1 .  00 
.00+0.06+1.00 


6.00+0.36+2.00 
2.00  +  0.  12+1.25 
INC.    WITH  PTBL 


6.00  +  0.  36+2.00 
5.00  +  0.30+1.75 
1.00+0.06+1.00 
1.00  +  0.06+1.00 
INC.    WITH  PTAL 

3.00  +  0.  18+ 1 .00 
INC.    WITH  PTBL 


3.00+0. 18+1.00 
3.00+0. 18+ 1 . 00 
1.00  +  0.06+1.00 
INC.  WITH  TEXT 
1.00+0.06+1.00 


8-00+0.48+2.00 
6.00  +  0.36+1.75 
2.00+0. 12+1.00 


120  INTERFACE  AGE 


FEBRUARY  1977 


SOFTWARE  SECTION 


SHORT  SOFTWARE  ROUTINES 


AN  8080  MEMORY  OBJECT 
CODE  SEARCH  ROUTINE 

By  T.  E.  Travis 


NEED  FOR  OBJECT  CODE  SEARCH  ROUTINE 

When  attempting  to  modify  software,  it  is  often 
necessary  to  find  and  change  every  occurrence  of  a 
particular  instruction  sequence  or  every  reference  to 
some  specified  memory  location.  For  example,  if  one 
wished  to  modify  a  teletype-oriented  BASIC  to  use 
one  of  the  available  memory  mapped  video  boards 
such  as  the  Polymorphics  VTI-1 ,  it  would  be  necessary 
to  find  all  IN  and  OUT  instructions  directed  toward  the 
teletype  port  and  change  them  to  calls  to  input  and 
output  drivers  for  the  video  board.  Since,  in  the  case  of 
vendor  supplied  software,  a  source  listing  of  the 
program  to  be  modified  is  often  not  available,  a 
program  to  search  through  memory  looking  for  and 
identifying  all  such  calls  is  necessary. 

SEARCH  PROCESS 

The  program  presented  here  requires  no  peri- 
pherals and  will  search  memory  starting  at  any  desired 
location  looking  for  a  byte  pattern  of  any  arbitrary 
length.  Every  time  the  pattern  is  found,  the  program 


stops  with  the  address  of  the  first  byte  following  the 
pattern  in  memory  locations  26  and  27  (hex).  Once 
those  locations  have  been  examined  and  noted,  the. 
program  can  be  restarted  and  it  will  continue  its 
search. 

APPLICATION 

As  listed,  the  program  begins  at  location  zero,  but  it 
can  be  moved  to  any  place  in  memory  by  changing  all 
of  the  three  byte  instructions  to  point  to  their  new 
targets.  To  use  the  program,  load  the  starting  address 
into  memory  locations  26  and  27,  the  length  of  the 
pattern  into  28,  and  the  pattern  to  be  sought  into  29  to 
29  +  n  where  n  is  the  value  stored  in  28.  The  program 
is  then  initiated  at  location  zero  and  will  stop  when  it 
encounters  the  desired  pattern.  This  will  always 
happen  because  the  program  will  eventually  wrap 
around  memory  and  compare  the  pattern  with  itself. 

SEE  MICROCOMPUTER  SOFTWARE 
DEPOSITORY  PROGRAM  INDEX  FOR  COPIES  OF 
THIS  PROGRAM. 


HOflO  MACRO  ASSEMRI EK  ,  VFR   2.3      CPRORS   =  0   P\GE  I 


0000 
0000 
0001 
0003 
0006 
0009 


OOOA 
OOOA 
000ft 

000  r. 

OOOF 

001  0 
00  t  1 
00  1  A 
0015 


001  A 
OOlfi 
OOtR 
001  c 
001  F 


0027 
0022 
002  5 


PPOGRAM  NAME:  SERCH  (flOHO  MFMORY  SEARCH  ROUT  INF) 
PPOGRAMvfR;      t.   E.  TFAVIS 

STORAGE   REOU IRFMENTS:      '*  \    flYTES   PLUS  PATTFRN 

I/n   REQUIREMENTS:  N'INE 

REUUlRFn  SUPPURTING  SOFTW.\RF:  NONE 


FOU 
LHL  D 
EOU 
L  X  I 


COMPARE   PATTEPN  WITH 


;L0AD   STARTING  AODRF.SS 

;lOAD  PATTERN  AODPESS 
M.UA0  PATTFRN  LFNGTH 
;M0Vf    LENGTH  TO  R 


;L0An   PATTERN    l)Y  T  r 

ICOMPARE   WITH  MEMORY 

; PRANCH    IF    NOT  EQUAL 

; I NC  R  F  HENT    MEMORY  POINTER 

; DC C R E ME N T   LENGTH  COUNTER 

; BRANCH    IF  DONE 

; I NCREMFNT   PATTERN  POINTER 

;CDNTINUE  TESTING 


PATTFoN  PiO   NOT   COMPARE,   ADVAMCF  MFmQRY    STARTING  ADDRESS 


EOU  I 

LHID  fiOOR 

INX  H 

SHI  0  ADDR 

JMP  COMT 


:L0AD   STARTING  ADDRESS 
; INCREMENT 
;  SAVE 

;STAPT    TEST  AGAIN 


;  PAT 

; 

EOUAl 


TFRN  DIO  COMPARE 

s 


EOU 

shl  n 

Hi  T 


0007 
0001 

oon  t 


ADDR: 
LNGTH: 
P ATRN : 


; ME  MOPY   START  ADDRESS 
;  PATTERN  LENGTH 
; T  E  S  T  PATTERN 

WITH  ADDR    POINTING  TO 


NO  P R (1  ( » R A M  FPRDHS 


80R0    MACRO    ASSFMhLFR.    tfER    2.3      FRPnoS   =   0   PAGE  7 
SYMR0L  TABLE 


0007  AnniR  0026  a  oooo  c  0001 

OOOA  CONT  0003  D  0002  E  0003 

007?  H  000*  L  0005  LNf.T  H  0028 

0006  NOT  F  0  0018  PATRN  0029  PSW  0006 

0000  *          SP  0006 


FEBRUARY  1977 


INTERFACE  AGE  121 


MICROCOMPUTERSiJK  x  g  RAW^IWIriKL . 
r^^^r  f  rn  r  i  t  t  t  i  i  r  v  • '  •  i  Wrn 

it  t  iHr^mT 


San  Francisco  Bay  Area— where  it  all  started— finally  gets  its  act  together. 
7,000-10,000  PEOPLE  ■  100  CONFERENCE  SESSIONS  ■  200  COMMERCIAL  &  HOMEBREW  EXHIBITS 
2  BANQUETS  ■  SPECIAL  INTEREST  SOCIAL  CENTERS 

San  Francisco  Civic  Auditorium,  Northern  California's  Largest  Convention  Facility 

YOU  Can  Be  A  Part  Of  It: 


■  Some  of  the  things  you  can  do  are: 

Exhibit  a  Homebrewed  System 

•  Hardware  or  Software 

•  Prizes  for  Best  "Homecooking" 

(just  like  a  country  fair) 

•  Nominal  Grants-ln-Aid  Will  Help 
With  Exhibit  Transportation  Costs 

(grants  will  be  refereed) 
Present  a  Talk 

•  A  Formal  Paper 

•  An  Informal  Talk 
Serve  on  a  Panel 

•  As  a  Panel  Member 

•  As  the  Coordinator/Moderator 
Offer  Suggestions 

•  Topics  for  Talks  &  Panels 

•  Speakers  &  Panel  Participants 

•  Interesting  Exhibits 

(homebrewed  or  commercial) 

•  Special  Activities 

■  Quick,  write  or  call  for  more  details! 
Jim  Warren,  Faire  Chairperson 

Box  1579 

Palo  Alto  CA  94302 
(415)  851-7664  v  323-3111 


Some  of  the  Conference  Sections  being  planned: 

•  Computer  Graphics  on  Home  Computers 

•  Computer-Driven,  &  Computer-Assisted  Music  Systems 

•  Speech  Synthesis  Using  Home  Computers 

•  Computers  &  Amateur  Radio 

•  Microprogrammable  Microprocessors  for  Hobbyists 

•  Program  &  Data  Input  via  Optical  Scanning 

•  Floppy  Disc  Systems  for  Personal  Computers 

•  Computer  Games:  Alphanumeric  &  Graphic 

•  Computers  &  Systems  for  Very  Small  Businesses 

•  Personal  Computers  for  the  Physically  Handicapped 

•  Personal  Word-Processing  Systems 

•  Software  Design:  Modularity  &  Portability 

•  Personal  Computers  for  Education 

associated  with  a  Univ.  of  California  short-course 

•  Several  Sections  Concerning  Standards 

•  Other  Sections  for  Club  Leaders,  Editors,  Organizers,  etc. 

Co-Sponsors  include  amateur,  professional,  &  educational  groups: 

•  The  Two  Largest,  Amateur  Computer  Organizations 

Homebrew  Computer  Club 

Southern  California  Computer  Society 

•  Both  Area  Chapters  of  the  Association  for  Computing  Machinery 

San  Francisco  Peninsula  Chapter  &  Golden  Gate  Chapter 

•  California  Mathematics  Council 

•  Stanford  University's  Electrical  Engineering  Department 

•  Community  Computer  Center 

•  People's  Computer  Company 


francisco  J 


122  INTERFACE  AGE 


CIRCLE  INQUIRY  NO.  56 


FEBRUARY  1977 


I    S.D.  SALES  CO. 


P.O.  BOX  28810  -  E 
DALLAS.  TEXAS  75228 


Z-80  CPU  CARD  KIT 
FOR  IMSAI/ALTAIR 


$149: 


From  the  same  people  who  brought  you  the  $89.95  4K  RAM  kit.  We  were  not  the  first  to 
Introduce  an  IMSAI/ALTAIR  compatible  Z— 80  card,  but  we  do  feel  that  ours  has  the  best 
design  and  quality  at  the  lowest  price. 

The  advanced  features  of  the  Z— 80  such  as  an  expanded  set  of  158  instructions,  8080A 
software  compatibility,  and  operation  from  a  single  5VDC  supply,  are  all  well  known.  What 
makes  our  card  different  is  the  extra  care  we  took  in  the  hardware  design.  The  CPU  card  will 
always  stop  on  an  Ml  state.  We  also  generate  TRUE  SYNC  on  card,  to  insure  that  the  rest  of 
your  system  functions  properly.  Dynamic  memory  refresh  and  NMi  are  brought  out  for  your 
use.  Believe  It  or  not,  not  all  of  our  competitors  have  gone  to  the  extra  trouble  of  doing  this. 

As  always,  this  kit  includes  all  parts,  all  sockets,  and  complete  instructions  for  ease  of  assem- 
bly. Because  of  our  past  experience  with  our  4K  kit  we  suggest  that  you  order  early.  All  orders 
will  be  shipped  on  a  strict  first  come  basis.  Dealers  Inquiries  welcome  on  this  item. 


Kit  shipped  with  2  MHZ  crystals  for  existing  500NS  memory.  Easily  modified  for  faster  RAM  chips  when  the  prices 
come  down.  Z_80  Manual  -  $7.50  Separately, 

Kit  includes  Zilog  Manual  and  all  parts. 


JUMBO 
LED 
CAR 

CLOCK 


$16.95 

KIT 


kit. 
DC 


You  requested  it!  Our  first  DC  operated  clock 
Professionally  engineered  from  scratch  to  be  a 
operated  clock.  Not  a  makeshift  kluge  as  sold  by  others. 
Features:  Bowmar  4  digit  .5  inch  LED  array,  Mostek 
50252  super  clock  chip,  on  board  precision  time  base, 
1 2  or  24  hour  real  time  format,  perfect  for  cars,  boats, 
vans,  etc.  Kit  contains  PC  Board  and  all  other  parts 
needed  (except  case).  50,000  satisfied  clock  kit  cus- 
tomers cannot  be  wrong! 

FOR  ALARM  OPTION  ADD  $1.50 
FOR  XFMR  FOR  AC  OPERATION  ADD  $1.50 


60  HZ  CRYSTAL  TIME  BASE  FOR  DIGITAL  CLOCKS 

S.D.  SALES  EXCLUSIVE! 
KIT  FEATURES: 

A.  60HZ  output  with  accuracy  comparable  to  a  digital  watch. 

B.  Directly  interfaces  with  all  MOS  Clock  Chips.  ^ 

C.  Super  low  power  consumption.  (1 .5  ma  typ.)       $5.95  Or 

D.  Uses  latest  MOS  1  7  stage  divider  IC.  2/$  10. 

E.  Eliminates  forever  the  problem  of  AC  line  glitches. 

F.  Perfect  for  cars,  boats,  campers,  or  even  for  portable  clocks 
at  ham  field  days. 

G.  Small  Size,  can  be  used  in  existing  enclosures. 

KIT  INCLUDES  CRYSTAL,  DIVIDER  IC,  PC  BOARD 
PLUS  ALL  OTHER  NECESSARY  PARTS  &  SPECS 


50HZ  CRYSTAL  TIME  BASE  KIT  -  $6.95 
All  the  features  of  our  60HZ  kit  but  has  50HZ  output.  For  use 
with  clock  chips  like  the  50252  that  require  50HZ  to  give  24 
hour  time  format. 


1 


THIS  MONTH'S  SPEC  I A  LS! 
300.00  KHZ  CRYSTAL  -  $1.50 
8080 A  -  CPU  CHIP  by  AMD  -  $19.95 
82S129  -  256  x  4  PROM  -  $2.50 
N.S.  8865  OCTAL  DARLINGTON  DRIVERS 
3  for  $1 .00 
Z-80  -  CPU  by  Zl  LOG  -  $69.95 
MM5204  -  4K  EPROM  -  $7.95 
Prices  in  effect  this  month  ONL  Y! 


Q 


4K  LOW  POWER  RAM  BOARD  KIT 
THE  WHOLE  WORKS  -  $89.95 

Imsai  and  Altair  8080  plug  in  compatible.  Uses  low  power 
static  21  L02-1  500ns.  RAM's,  which  are  included.  Fully  buffer- 
ed, drastically  reduced  power  consumption,  on  board  regulated, 
all  sockets  and  parts  included.  Premium  quality  plated  thru 
PC  Board. 


740O-19C  7411— 29c 
74LS0O-49C  7413— 50c 
7402— 19c  7416— 69c 
74LS02— 49c  7420— 19c 
7404— 19c  7430— 19c 
74L04— 29c  7432— 34c 
74S04— 44c  7437— 39c 
74LS04-49C  7438— 39c 
7406— 29c  7440— 19c 
7408— 19c  7447— 85c 
7410— 19c      7448— 85c 


7451— 19c 
7453— 19c 

7473—  39c 

7474—  35c 
74LS74-59C 

7475—  69c 

7476—  35c 
748  0— 49c 
7483— 95c 

7485—  95c 

7486—  45c 


TTL  INTEGRATED  CIRCUITS 


7490— 65c  74153— 75c 
74LS90— 95c  74154-1.00 

7492—  75c      74157— 75c 

7493—  69c      74161— 95c 

7495—  75c  74164-1.10 

7496—  89c  74165-1.10 
74121-38C  74174— 95c 
74123-65C  74181-2.50 
74132-1.70  74191-1.25 
74S138-1.95  74192-1.25 
74141-75C  74193-1.00 

74195— 69c 


STICK  IT!           Huge  Special  Purchase 
in  your  clock          Not  Factory  Seconds 
in  your  DVM,  etc.!        As  sold  by  others! 

4  JUMBO  .50"  ^^^^^^^^^^^^^^^^^ 

(with  colons  and 

AM/PM  Indicator)                                     BUY  3  for  $10. 

BOWMAR  4  DIGIT  LED  READOUT  ARRAY 

The  Bowmar  Opto-Stick.  The  best  readout  bargain  we  have  ever 
offered.  Has  four  common  cathode  jumbo  digits  with  all  seg- 
ments and  cathodes  brought  out.  Increased  versatility  since  any 
of  the  digits  may  be  used  independently  to  fit  your  applications. 
Perfect  for  any  clock  chip,  especially  direct  drive  units  like 
50380  or  7010.  Also  use  in  freq.  counters,  DVM's,  etc.  For  12 
or  24  hour  format. 

UP  YOUR  COMPUTER! 
21 L02-1  1 K  LOW  POWER  500  NS  STATIC  RAM 
TIME  IS  OF  THE  ESSENCE! 

And  so  is  power.  Not  only  are  our  RAM'S  faster  than  a  speeding 
bullet  but  they  are  now  very  low  power.  We  are  pleased  to  offer 
prime  new  21  L02— 1  low  power  and  super  fast  RAM's.  Allows 
you  to  STRETCH  your  power  supply  farther  and  at  the  same 
time  keep  the  wait  light  off.                                 8  for  $12.95 

$12  95                S.D.  SALES  EXCLUSIVE!  <fc1?QR 
^                    MOS  6  DIGIT  UP-DOWN  COUNTER        *♦*  l£'30 
40  PIN  DIP.  Everything  you  ever  wanted  in  a  counter  chip. 
Features:  Direct  LED  segment  drive,  single  power  supply  (12 
VDC  TYP.),  six  decades  up/down,  pre-loadable  counter,  sep- 
arate   pre-loadable   compare    register   with    compare  output, 
BCD   AND   seven  segment   outputs,   internal  scan  oscillator, 
CMOS  compatible,  leading  zero  blanking.  1MH2.  count  Input 
frequency.  Very  limited  qty.                       WITH  DATA  SHEET 

WESTERN  DIGITAL  UART 

No.  TR1602B.  40  pin  DIP 
This  Is  a  very  powerful  and 
popular  part. 
NEW-$6.95  with  data 
LIMITED  QUANTITY 

SLIDE  SWITCH 
ASSORTMENT 

Our  best  seller,  includes 
miniature  and  standard 
sizes,  single  and  multl- 
Fif^  position  units.  All  new, 
first      quality,  name 
brand.  Try  one  package 
and      you'll  reorder 
more.  SPECIAL  12/$1. 

RESISTOR 
ASSORTMENT 

X  W  5%  and  10% 
\            PC  leads.  A  good  mix 
of  values.  200/$2. 

MOTOROLA  POWER 
DARLINGTON 
Back  in  Stock! 

Like  MJ3001.  NPN  80V.  1  OA. 
HFE  6000  TYP.  TO-3  case. 
We  Include  a  free  723C  volt 
reg.  with  schematic  for  power 
supply.       SPECIAL— $1.99 

1702A  2K  ERASEABLE 
PROM'S  -$6.95 
We  tell  It  like  It  is.  We  could 
have  said  these  were  factory 
new,  but  here  Is  the  straight 
scoop.  We  bought  a  load  of 
new  computer  gear  that  con- 
tained a  quantity  of  1702  A's 
In   sockets.  We  carefully  re- 
moved the  parts,  verified  their 
quality,  and  are  offering  them 
on  one  heck  of  a  deal.  First 
come,  first  served.  Satisfaction 
guaranteed!    U.V.  Eraseable. 
$£.95  each               4  for  $25 

CALL         YOUR  BANK 
AMERICARD   OR  MASTER 
CHARGE    ORDER    IN  ON 
OUR  CONTINENTAL 
UNITED     STATES  TOLL 
FREE  WATTS: 

1-800-527-3460 

Texas  Residents  Call  Collect 

214/271-0022 

TERMS: 
Money  Back  Guarantee.  No 
COD.  Texas  Residents  add  5% 
tax.   Add   5%   of  order  for 
postage  and  handling.  Orders 
under  $10.  add  75c.  Foreign 
orders:    US    Funds  ONLY! 

S.D.  SALES  CO. 
P.O.  BOX  28810  E 
Dallas,  Texas  75228 

FEBRUARY  1977 


For  orders  over  $15.  00    Choose  $1.  00  FREE  mdse.. 

CIRCLE  INQUIRY  NO.  61  INTERFACE  AGE  123 


Letters 

to  the 
Editor 

- 

Dear  Editor: 

I  am  a  professional  programmer  and 
have  been  vaguely  aware  of  the  exis- 
tence of  the  personal  computer  for 
about  a  year.  Last  week,  while  shop- 
ping, I  passed  by  a  computer  store  and 
stopped  in  to  satisfy  my  curiosity.  After 
looking  at  the  system  and  reading 
some  magazines,  I  left  in  a  state  of 
amazement  and  joy  after  discovering 
all  of  the  hardware  and  software  avail- 
able to  the  home  computerist.  I'm  very 
happy  about  finding  a  hobby  that  I  can 
really  "get  into."  For  my  first  project,  I 
would  like  to  convert  a  B  &  W  TV  set 
into  a  video  monitor.  If  any  of  the 
INTERFACE  readers  have  any  sugges- 
tions as  to  how  to  accomplish  this  task, 
I  would  be  grateful  to  hear  from  them. 

Brian  O'Connell 


Dear  Editor: 

I  am  writing  this  letter  to  inform  the 
readers  that  the  MITS-BASIC  Software 
package  will  not  run  with  the  Z80  pro- 
cessor. 

The  problem  has  to  do  with  the  use 
of  the  parity  flag.  MITS  seems  to  use  it 
extensively. 

I  was  wondering  if  any  of  your 
readers  had  some  sort  of  a  solution  for 
this  problem. 

Joe  T.  Huffman 

No  sooner  said  than  done  —  See  the 
article  A  Z80  MITS  12K  Extended 
BASIC  Patches,  by  Martin  D.  Gray  in 
this  issue  of  INTERFACE  AGE.  This  ar- 
ticle provides  required  software 
patches  to  the  MITS  Extended  BASIC 
for  execution  by  the  Z80  CPU. 

Software  Editor 


Dear  Editor: 

...  I  am  an  inmate  in  the  Washing- 
ton State  Penitentiary  .  .  .  Several  of  us 
here  are  trying  to  utilize  our  time  by 
studying  computers. 

NAME  WITHHELD 


Dear  Editor: 

Thanks  for  publishing  Dr.  Wang's 
Palo  Alto  Tiny  Basic  in  a  more  read- 
able form  than  that  which  appeared  in 
Dr.  Dobb's  Journal. 

There  is  a  glitch  in  the  change  sign 
routine  which  gives  the  "HOW"  error 
message  whenever  a  zero  value  or 
expression  is  preceded  by  a  minus  sign. 
For  example:  LET  A  =  0;  Let  B  =  -A 
will  not  work. 

To  fix  this  change  the  CHGSGH  rou- 
tine at  0486  by  adding  three  instruc- 
tions: 

CHGSGN: 

MOV  A,H 

added  f  ORA  L 

instructions  <  RZ  ^zero  valu€ 

l^MOV  A,H 

PUSH  PSW 
Arthur  I.  Larky  PH.  D 


Dear  Editor: 

I  have  just  started  to  read  INTER- 
FACE magazine  and  find  it  very  diffi- 
cult to  put  down.  I  really  enjoy  reading 
the  articles  that  discuss  the  new  ver- 
sions of  Star  Trek  that  are  becoming 
available  and  all  the  other  articles  that 
discuss  various  programs  (Basic-diet- 
plan)  and  others.  I  am  really  amazed 
how  you  can  just  list  the  proper  bits  of 
information  and  just  start  plugging 
them  right  into  the  old  computer 
banks.  I  am  also  glad  that  you  put  all 
your  games  and  other  lists  in  8K  Basic. 
I  am  going  to  be  purchasing  a  IMSAI 
8080  or  an  ALTAI  R  8800b  in  the  near 
future  and  through  your  magazine 
alone  I  will  be  able  to  start  developing 
a  library  immediately. 

There  is  a  new  topic  I  would  really 
like  to  see  discussed  and  that  is  the 
possibility  and  availability  of  voice 
recognition  boards  and  apparatus  for 
microprocessor  like  the  IMSAI  8080 
and  the  ALTAI  R  8800b.  I  would  really 
be  fascinated  and  I  would  feel  that  in- 
vestment into  the  microprocessors 
would  be  a  good  idea  cause  I  could 
eventually  expand  it  into  a  unit  using 
voice  recognition  equipment  as  a  peri- 
pheral. 

Also  is  there  a  good  book  around 
that  will  teach  me  how  to  understand 
and  use  4K  BASIC  all  the  way  through 
extended  BASIC  (12K)?  I  would  like  a 
book  that  presents  this  information 
clearly  and  simply.  I  am  looking  for- 
ward to  hearing  from  you  very  soon.  I 
really  hope  to  see  an  article  about 
voice  recognition  and  all  its  hardware 
come  up  soon.  I  just  sent  my  subscrip- 
tion in  to  your  magazine  today  so  I 
won't  miss  any  of  the  other  exciting 
things  you  already  put  in  your  maga- 
zine. Thank  you  for  your  time. 

Douglas  Call 


Dear  Editor: 

In  that  I  am  a  beginner  in  compu- 
ters and  working  with  a  small  budget.  I 
would  like  to  see  more  how-to  articles 
in  your  magazine.  I  cannot  afford  a  lan- 
guage system  right  now,  and  since  I'm 
starting  from  scratch  with  only  a  com- 
munications background,  I  am  writing 
very  simple  iterations  in  machine  lan- 
guage. I'm  building  an  octal  terminal 
for  a  little  more  speed  in  my  program- 
ming. Your  magazine  seems  to  have  a 
particular  wealth  of  advertizements 
and  a  dearth  of  instruction  and  theory. 
Articles  of  some  length  on  such  things 
as  instruction  sets,  and  basic  routines 
would  be  very  welcome. 

I  am  a  technician  in  the  Navy,  and 
somewhat  handicapped  by  a  lack  of 
literature  overseas  and  the  great  cost 
of  technical  publications.  I  know  that 
there  are  quite  a  few  of  us  in  the  same 
situation.  It  is  very  difficult  to  learn 
microcomputers  this  way.  I  will  be  very 
happy  to  write  you  some  articles  when 
I  learn  something! 

John  Fitzpatrick 


Dear  Editor: 

An  article  I  would  like  to  see  in 
INTERFACE  AGE  would  be  about  the 
use  of  hobbyist  type  equipment  to 
solve  some  of  the  basic  'real  world' 
problems  of  operating  a  robot  in  a 
house  or  shop  type  environment. 
Problems  such  as  fail  safe  design,  tele- 
metery,  navigation,  and  hazard  avoid- 
ance. 

Paul  F.  Grayson 


MICRO-MARKET     AD  RATE: 

$25.00  per  column  inch.  Max.  4 
column  inches  per  ad.  Submit  ads 
to  Micro-Market  Ads — INTERFACE 
Magazine,  P.O.  Box  1  234,  Cerritos, 
CA  90701. 


Personal  Computing  '77 
Consumer  Trade  Fair 

2nd  Fantastic  Year 

ATLANTIC  CITY,  N.J.  AUG.  27  &  28 

Thousands  acclaimed  u  last  year,  thousands  mor 
are  expected  to  attend  this  year 

■  Seminars  and  Technical  Talks  by  Leading  Electronic 
Equipment  manufacturers 

*  Major  Exhibits  from  ell  parts  of  the  Nation 

■  Door  Prizes.  Free  Literature  and  Free  Mementos 

•  All  this  Plus  Sun  and  Surf  —  Fun  and  Excitement  in 
the  New  Gambling  and  Show  Place  of  tha  East 

FOR  MORE  INFORMATION  CALL 
JOHN  DILKS 
TRADEFAIR  DIRECTOR 
(609)  927-3873 


SPECIAL  GROUP  RATES  FOR  CLU8S  AND 
ORGANIZATIONS  TRAVELING  FROM  THE  WEST 
COAST  AND  MID. AMERICA 

SevenSeas  Travel  Dawn  Coingan 

17220  S  Norwalk  Blvd  1213)  924-8383 

Ccrrnos  CA  90701 


124  INTERFACE  AGE 


FEBRUARY  1977 


MICRO-MARKET 


TELETYPES  $800 

Model  33  ASR    •    Newly  refurbished 
RS232  •  full/half  duplex 
30  day  warranty 
THE  MULL  COMPANY 

920  Laurel  Avenue 
MenloPark.CA  94025 
(415)  327-7509 


COUTW  FLORIDA 

Authorized  Dealer: 
IMSAI,  Southwest,  Cromemco,  CSC,  Vector  and  others 
Books,  Magazines,  Newspapers,  Service  and  Supplies 
University  Shopping  Center 
1238A  South  Dixie  Highway 
Coral  Gables,  Fla.  33146 
(305)661-6042 


IF    YOU  MEAN 
BUSINESS 

USE  YOUR  MICRO-SYSTEM 
AS  INTELLIGENT  TERMINAL 
AT  110/308/1200  BAUD 
ON-LINE  OR  REMOTE  JOBS 
FREE  PROGRAM  LIBRARY 
EASY  DATA-ENTRY  FOR 
SALES  ORDERS, INVOICING, 
INVENT . ,ACCTG. , PAYROLL 
QUIKDATA  TIMESHARING 
3431  Cerritos,Los  Alami- 
tos  90720;213/596-4491 


Texas  Instruments 


CALCULATOR  PARTS: 

•  Printers  (5050) 

•  Displays  (SR-50-56) 

•  Card  Readers  (SR-52) 

•  Repair  Manuals  (SR-50-56) 

•  Keyboards  (most) 

•  Cases  (most) 

SEND  ONE  DOLLAR 
FOR  PARTS  LIST  TO: 

BOOTSTRAP  ENTERPRISES 
PO  BOX  614 
Richardson,  Texas  75080 


ADD  COLOR  TO  EXISTING  TV  GAMES 

WITH  A  CHROMA-PLEX  7700 
DIGITAL  CHROMA   MULTIPLEXER  KIT! 

EASILY  ADAPTED  TO  MOST  BLACK  and  WHITE  GAMES,  (i.e.,  General 
Instrument  6-gatne  chip  #AY-3-8S00.)  CMOS  M0S  FET  CIRCUITRY.  LOW 
POWER  REQUIREMENTS:  7.0  V  reg.  £  25na.  3-5  6"  x  4"  double-sided 
plated  board.  DOZENS  OF  COLOR  COMBINATIONS  POSSIBLE.  VERY 
VERSATILE.  EASILY  ASSEMBLED  IN  ONE  EVENING.  S3S.D0  P.P. 
ORDER  BY  PHONE  or  MAIL.  DIAL  402  987-3771. 


DAKOTA  CITY.  NE.  68731 


ELIMINATE  INTERFERENCE! 

Compact  power  line  filter  keeps  line  in- 
terference out  of  your  system.  Bonus!  Keep 
your  system  noise  from  interfering  with 
neighborhood  TV,  FM  and  AM  receivers.  Wire 
directly  into  Teletype,  Computer,  Terminal  or 
Power  Supply.  Complete  installation  instruc- 
tions. &  Only  $8.95  Postpaid. 

Electronic  Specialists,  Inc. 
171  So.  Main,  Natick,  Mass.  01760 
 (617)  655-1532  


AMCO  HA9  APPLE! 

APPLE  COMPUTERS 
AMCO  ELECTRONIC  SUPPLY 

635  E.  ARROW  HIGHWAY 
AZUSA.  CA  91702 
Phone:  (213)  332-2216 


SERIES 


33TTY 


FOR  SALE  OR  RENT 

■ EXCLUSIVE  VAROON  STYLING  M 
REDUCESOPERATINQ  NOlSE 
50%  OR  MORE 

:::;.r  940°°  40%    J  ■ 

KSR  ( 

875"  40^  MB 
650°°  30^.  /  jp 


GET  COMPLETE  DETAILS  WITH  A  DIRECT  CALL: 
(214)252-7502  •  TWX91 0880-5781  •  TELEX 73-0022 

vordon  &  associates.  Inc. 

930  N.  Beltllne  Road  ■  Irvlno,  Texas  75061 

A  tuetidiuyof  Plon**>  Tt.it  Corporation 


THE  COMPUTER  CORNER 

"Brains  are  our  Business  " 
ts  IMSAI  8080.  POLY-88.  Processor  Tech 
^  Books.  Magazines.  TTY  Supplies,  Brain  Games 
Hours:  10-8  pm  daily  &  9et.;  Thure.  10-9  pm 
White  Plains  Mall,  200  Hamilton  Ave. 

WHITE  PLAINS.  NY  10601 

Telephone:  (914)  94 90 ATA 


USED  FABRI-TEK  688  CORE  MEMORY 
SYSTEMS  —  $249.95 

SPEED — 1.2  jzsec.  cycle  time — .5^/sec.  access. 
CAPACITY— 32K  words  x  20  bits.  POWER 
SUPPLIES  REQUIRED— ±15  and  +  5volt. 
SIZE— 2"x1 5"x22".  Single  board  design. 
Documentation  included.  Makes  a  great  64Kx8 
8080  or  6800  Memory.  TTL  Compatible 
Interface. 

Send  order  to:  USED  MEMORY  MART 

5437  W.  Tierra  Buena  Ln. 
Glendale,  Arizona  85306 


************ 

*  HELP  WANTED  * 

*  We're  looking  for  a  good  person* 

*  to  be  in-store  systems  analyst.  * 

Jf  •  ALTAIR  owner  preferred  * 

3f  *  Interested  in  people  3f 

£  •  Digital  Logic  and/or  programming  ♦ 

^  •  College  degree  desired  * 


We  Offer 


•  Top  technical  challenge 

•  Liberal  Salary  and  challenge 

•  Technological  Leadership 

•  Friendly  enviroment 


Computer  Store 
820  Broadway 

*  Santa  Monica,  CA  90401 

*  (213)  451-0713 
**************** 


COMPUTER  HOBBYISTS! 
Nationwide  Classified 
Advertising  Newsletter 

Buy  &  Sell  Hardware  &  Software 

new/used/unique/low-cost 
$3.75  for  18  issues. 
Free  sample  issue  on  request. 
ON_LINE  Newsletter 
24695  Santa  Cruz  Hwy,  Lot  Gatos,  Ca.  95030 


n  i  i 
I 


I 

ii  n 


Computer  Mart  of  New  York  Inc. 
314  Fifth  Ave.  ★  New  York,  N.Y.  10001 

Microcomputers.  Books.  Components,  Parts 
Authorized  (Dealer  —  Service—  Friendly  Advice 
Open  10-6  PM  Mon-Sat  S1ANVEIT. 
10-9  30  PM  Thurs  Eve  Storekeeper 
Telephone  (212)  279-1048 


LONG  ISLAND 

IMSAI  Dealer 
COMPUTER  MICROSYSTEMS 

Kits  •  Paits  •  Service  •  Books  •  Magazines 
1309  Northern  Blvd.,  Manhasset,  N.Y.  11030 
Telephone  (516)  627-3640 


End  your  video  display  problems 
quickly  with  a  "PIXE'VERTER" 

A  transistorized  modulated  oscillator  which  instantly  converts  a  TV 
receiver  into  a  top  notch  video  monitor.  Connects  directly  to  antenna 
terminals.  No  wiring  modifications  required  to  the  set.  Operates  on 
channels  2-6-  Power  requirements  5*6  voits  E  3  ma.  Ideally  suited  for 
computers,  electronic  games.  TV  cameras,  vfdeo  recorders,  etc.  Size: 
1 .25"  x  2. 1".    Kit  model  *PXV-2A  S8.50.    Order  by  phone  or  snail. 


ATV  ftw.-w/t:l,    I3-I  BROADWAY 


DAKOTA  CITY.  NEBR.  68131 


*  1702A  PROM  PROGRAMMING  SERVICE  * 

EPROM  copy-$1  Hex  form  input- $3  Prime 
1702A-S9.  Software  available  including: 
Program  loaders,  Memory  checkers,  Video 
drivers  and  Code  convenors. 
We  offer:  Fast  turnaround,  free  coding  forms, 
quantity  discount.  Write  for  free  catalogue. 

MICROTRONICS 

P.O.  Box  7454F  Menlo  Park,  CA  94025 


A.D.M. 
Communications,  Inc. 

Teletype  &  Communications 
Equipment 
Buy— Sell— Recondition 
1322  Industrial  Ave. 
Escondido,  CA  92025 
(714)  747-0374   Telex.  695097 


FEBRUARY  1977 


INTERFACE  AGE  125 


FLEA 


MARKET 


POWERTEC  POWER  SUPPLIES.  New  in 
sealed  cartons.  Three  outputs  1  @  5V-6A 
and  2  @  ±  12-1 .5A.  Short  and  over  voltage 
protected.  Open,  black  aluminum  frame. 
Perfect  for  /*P  and  TTL  work.  $29.95.  B. 
Adams,  P.O.  Box  146,  Bryn  Mawr,  CA 
92318. 


IMSAI  I-8080  kit  —  never  assembled.  Has 
22  slot  mother  board.  $490.  PI04-1, 
$10;PIOMs,  $16.50;  SI02-2.  $119:  RAM 
4A-4,  $105.  Send  SASE  for  info.  First 
checks  will  take  the  gear.  Include  shipping 
costs;  excess  will  be  refunded,  or  arrange 
local  pickup.  S.R.  Lewis,  1477  Barrington, 
#17.  L.A.  CA  90025. 


SELL  YOUR  PRODUCTS  IN  FRANCE. 
American  with  a  new  French  company 
wishes  to  represent  U.S.  products  which 
have  not  as  yet  been  exploited  in  Europe. 
If  you  feel  your  products  are  exportable  - 
write  to  me  with  full  details  P.  Studner, 
SUPER  SEARCH.  39  Avenue  de  Breteuil, 
Paris  75007,  France. 


FOR  SALE:  Altair  8800,  working,  hardly 
used,  ICs  in  sockets,  flat-cable  to  front- 
panel,  $440  or  offer.  BYTE  Shop  TV  type- 
writer, new,  working,  $110  or  offer.  Den- 
nis Feucht,  2015  S.E.  51st  Ave.,  Portland, 
OR  97215.  (503)  233-2648  or  (503) 
644-0161  ext.  6255. 

FOR  SALE:  Two  new  unused  MFE250B 
digital  cassette  drives  -  call  best  offer;  Also 
have  Remex  papertape  spooler  $25  plus 
shipping;  assembled  morrow  cassette 
board  $100;  Bug  book  III  $10;  Processor 
Tech  5KBASIC  manuals  and  tape  $10. 
Gary  Alevy,  48D  Clintwood  Ct.,  Rochester, 
N.Y.  14620;  (7 1 6)244-1 1  33. 

FOR  SALE:  Processor  Technology  4K 
Static  RAM  assembled,  works  perfectly, 
meets  all  specs,  with  all  documentation 
$150.00.  Free  unused  papertape  of  5K 
Basic  with  documentation  included  with 
RAM  board.  Barry  Gerber,  720  Morse  Ave., 
Placentia,  CA  92670. 

WANTED:  SwTpc  6800  and  TVT  and  KIM- 
1 .  Give  details.  Joe.  51 625  Chestnut  Road, 
Granger  IN  46530. 


HFO  FLEA  MARKET  ADS 

★  PERSONALS  FREE  * 

Max.  1 0  lines  per  ad.  Submit  Ads  to: 
FIFO  Ads— INTERFACE  AGE  Maga- 
zine, P.O.  Box  1234,  Cerritos,  CA 
90701. 


FOR  SALE:  ALTAIR  8800a.  16  slot  m/brd, 
fan;2-4k  dyn,  2-4k  static,  (16k  total 
memory);  ACR  I/O;  3P  +  S  I/O;  TVT  II  w/64 
chars/line;  SCM  Telewriter;  software. 
$2150.  Will  Separate.  Evenings  - 
(312)  328-5610. 


FOR  SALE:  'Model  15  Page  Printer'  - 
Baudot  teletype  suitable  OSI,  MITS  680b 
computers.  Excellent  working  condition, 
with  current  source  and  box  of  paper.  Also, 
Friden  'Auxiliary  Punch'  —  Baudot  paper 
tape  punch.  Could  be  modified  to  ASCII 
with  additional  parts,  not  supplied. 
Probably  works,  not  guaranteed;  with  stand 
and  motorized  tape  takeup  spool.  Make 
offers  for  either  to:  G.  A.  R.  Trollope,  433 
Cherry  Lane.  Lewiston  N.  Y.  14092; 
(716)754-7222. 


-WANTED:  MITS  ALTAIR  disc  (88- 
DCDD)  with  disc  basic.  Need  not  be  in 
working  condition,  but  must  be  complete. 
State  age.  condition,  version  basic,  price 
and  other  particulars.  Dana  G.  Peterson, 
2129  Harper  Street.  Lawrence.  KS  66044; 
(913)  841-2817. 


FOR  SALE:  IBM  2311  compatible  disc 
drive  made  by  Marshall  plus  disc  pack, 
$425.  Teletype  ASR  33  with  auto-answer 
modem,  auto-dial,  stand.  Three  MITS  4K 
Dynamic  boards,  operating.  Signetics  3000 
Microprocessor  Designer's  Kit.  Make  offer. 
Lenny  Heath,  Bob  Turnage,  86  Village 
Green,  Greenville,  N.C.  27834;  (919)752- 
7813. 


FOR  SALE:  ALTAIR  8800A  completely 
assembled.  Includes  1 8-slot  motherboard. 
$550.00.  K.  Sisseon,  544  Wilkins,  Apt. 
1006,  Detroit,  Ml  48201. 


FOR  SALE:  ALTAIR  680b  —  assembled 
and  running.  Best  offer  over  $300.00.  Alan 
Dahlbom,  1  6  Forest  Street,  Cambridge,  MA 
02140. 


FOR  SALE:  IMSAI,  brand  new,  assembled 
and  fully  operational,  with  22  card  mother- 
board and  1  1  connectors.  $850.00.  Also 
memory  boards.  Sou  Nam  Kim,  10190 
Vicksburg  Drive,  Cupertino,  CA  95014. 
(408)996-0537...after  7.00  pm. 


Now  Available  for  Immediate  Delivery 


Remanufactured  Teletypes 
Model  M-33  ASR  or  KSR 
Like  New  Condition 
90  Day  Warrantee 

Prices  $840.00  ASR 
(Paper  tape  punch  and  tape  reader) 

$725.00  ksr 

Accoustic  Couplers  and 
RS-232  inter  face  available 

Prices  F.O.B.  Howell  N.J. 


For  Information  Contact 

B&N  COMMUNICATIONS 

R.D.  4  Box  272 
Howell,  N.J.  07731 
201-780-1880 
CIRCLE  INQUIRY  NO.  55 


126  INTERFACE  AGE 


FEBRUARY  1977 


FOR  SALE:  Service  Manual  for  Selectric 
I/O  Writer.  $28.  R.  Tierney,  4944  Cass  St. 
#811,  San  Diego.  CA  92109. 


HELLO  PARTY:  I  am  interested  in  ex- 
changing ideas/info.  etc.  relating  to 
telephone  applications  for  mini/micro  com- 
puters, such  as  PABXs',  Key  Systems,  etc. 
Call  Norm. ..(21  3)653-3300. 


FOR  SALE:  SPHERE  340  System  20K 
RAM,  1  K  system  monitor,  Full  SIM  board, 
Line  printer  w/tractor  feed,  Dual  floppy, 
CRT,  4K  EPROM  board.  16K  Mem.  board 
less  Mem.  chips,  and  more.  Lot's  of 
software.  $6,500.  Wayne  Smith,  227  S. 
State,  Salt  Lake  City.  UT  84111; 
(801)363-4941. 


FOR  SALE:  4K  RAM  boards  for  IMSAI  or 
ALTAIR.  High  speed,  low  power  (Music). 
Assembled  and  tested.  $200.00  each.  Dr. 
Michael  Stimson,  1530  Grand  Teton  Ct„ 
Chula  Vista.  CA.  9201  1. 


MEMORY  FOR  SALE:  GE  Core  Memory 
16K  by  40  Bits,  all  power  and  interface  cir- 
cuitry and  documentation  —  been  used 
with  an  8080  CPU.  Litton  Industries  Drum 
memory  with  full  read/write  electronics. 
Bryant  MBM  drum  memory.  By  unit  or  best 
offer  over  $250.00  for  lot.  C.  H.  Eby,  7101 
Mammoth  Ave..  Van  Nuys,  CA  91405; 
(213)988-1763. 


FOR  SALE:  Poly-88  computer,  new,  never 
used.  Assembled  and  tested,  with  the  video 
tested  by  the  factory.  Includes  64  character 
line  option  and  serial  port.  Power  for  expan- 
sion. Asking  price  $850.00.  J.  J.  Goss, 
5055  S.E.  Roethe  Road,  Milwaukie,  OR, 
97222;  (503)659-6601. 

WANTED:  Centronics  (101,  102)  Diablo, 
Datapoint  (2200,  1100),  or  H.W.,  or  H.P., 
equivalent.  NCR,  Entrex,  Univac,  tubes, 
printers,  disk,  diskette  drives.  Wango,  Wang, 
Kennedy,  Ampex,  Pertec  PEC  tape  drives,  in 
any  condition,  working  units,  scrap  frames  or 
spare  parts.  Software  Datapoint  or  H.W., 
H.P.,  equivalent.  Pat  Snyder,  Box  31, 
Franklin  Square,  NY  11010. 

FOR  SALE:  NEW  Olivetti  P-101  mini- 
computer. Easily  programmed,  permanent 
storage  of  programs  on  low  cost  magnetic 
cards,  hard  copy  printout.  Current  list  price 
$1 ,695.  Will  sacrifice  for  $995.00.  Free 
delivery.  Marc  Seligman,  320  Bryn  Mawr 
Ave.,  Bala  Cynwyd,  PA  19004. 

HELP!!  Where  (besides  GA)  can  I  obtain  a 
copy  (p.  tape/disk)  of  General  Automation 
CAP  16  Assembler?  Also  need  other  data, 
programs,  etc.  Call  Norm...(21 3)653-3300. 

HP-45  CRYSTALS:  I  have  some  crystals  to 
make  the  timebase  in  an  HP-45  accurate  so  it 
can  be  used  as  a  10  event  stopwatch.  I  am 
willing  to  sell  these  for  $13  and  will  include 
some  instructions  on  how  to  install  it.  Mark  S. 
Egbert,  1514  S.  320  E.  Orem,  UT  84057. 
(801)224-2102. 


PDP-8  MINI  COMPUTER  (Straight-8)  for 
sale  or  trade.  Mounted  in  attractive  walnut 
cabinet  (wife  approved  for  den).  Complete 
with  maintenance  manual,  drawings, 
4K  Basic,  4K  Focal,  Editor,  PAL  III  assembler, 
Disassembler,  TTY  interface,  games,  etc., 
etc.  Perfect  condition.  Free  DECUS  member- 
ship available  for  additional  software. 
Presently  in  use  with  ASR  Model  33  tele- 
type. Can  be  sold  with  or  without  teletype. 
Sale  price  w/o  teletype  $800.00.  Rex  Eagle, 
P.O.  Box  10498,  Charlotte,  N.C.  28288.  (704) 
374-6557. 

FOR  SALE:  Two  MITS  4K  static  memory 
boards.  Fully  essembled  and  100% 
operational.  I  am  switching  to  16K  static 
boards.  $160  each.  David  Milhouse,  2823 
Griffa  Ave.,  Columbus,  IN  47201. 


WANT  SYSTEM,  have  R/C  Gold  Mine  worth 
over  $3300  to  TRADE.  Helicopters,  planes, 
radios,  cars,  engines,  field  boxes  and  more. 
Interested  in  ALTAIR  8800B  or  IMSAI  8080 
System  in  trade  (will  accept  cash).  If  you're 
ready  to  move  outdoors  with  your  hobby 
please  call  A.B.  Clark,  (305)238-3408  nights, 
or  (305)873-2528  days.  Miami,  FL. 

SELECTRIC:  OneDuraMach  10 wide platten 
Selectric  based  terminal  with  dual  paper  tape 
punches  and  readers.  Computer  interface 
available.  IBM  serviced  and  adjusted  typer. 
Reconditioned  and  tested.  Contact  Ron 
Jenkins,  4490  Sirius  Ave.,  Lompoc,  CA. 
(805)733-2575  evenings  except  Mon.  and 
Wed. 


Customer  Service    IS    Our  Business!! 


VENTURY  FWY 


1/EMl.KA  Eil  VP 


at  People's  Computer  Shop 

1 3452  VENTURA  BLVD.,  SHERMAN  OAKS,  CA. 

=  Systems  Galore!! 


4  MILLION  BYTES  MEMORY!! 


DIGITAL  GROUP  Z-80  SYTEM 


743  KSP 


SEALED  BID  FOR  1st  &  2nd 
ISSUES  OF  "BYTE."  30  AVAIL. 
CLOSES  MARCH  10th,  1977 


PEOPLE'S  APPLICATION  SYSTEMS: 
Financial  Anaylysis  Packages 
Management  Science  Packages 
Accounting  Packages 
Scientific  Programs 
Medical  Management  System  Available  soon 

Market  Tested!! 


SPHERE  300 


BARGAIN  CORNER: 

TELETYPE 
SC-MP  KIT 


$295 
$  90 


HOUR9: 


12-9:30  PM  TUE-FRI 
10-6:00  PM  SATURDAYS 
12-5:00  PM  SUNDAYS 


ALL  CHARGE  CARDS  HONORED 


FEBRUARY  1977 


CIRCLE  INQUIRY  NO.  51 


INTERFACE  AGE  127 


ADVERTISING  INDEX 


Information 
Inquiry 

Number  Page 

MANUFACTURERS 

1  Apple  Computer  Co   43 

2  Associated  Electronics    16 

3  Comptek    14 

4  Computer  Electronics    51 

5  Continental  Specialties    46 

6  Cromemco    1 

7  Digital  Group   3 

8  E  &  L  Instruments   ?8 

9  Electronic  Control  Technology   38 

*       HAL  Communications   80 

IMSAl   cm 

10  Intelligent  Systems   32.32A 

1 1  Matrix   8 

12  Microcomputer  Associates   61 

13  Microterm    62 

14  Miniterm   44 

15  MITS    15 

16  MPI   14 

17  National  Multiplex   19 

18  Osborne  Associates   20 

19  Ohio  Scientific  Instruments   16 

20  OK  Machine  &  Tool   52 

21  OmniSystems    18 

22  Parasitic  Engineering   61,63 

23  Peripheral  Vision    39 

24  Persci   53 

25  Prime  Radix    11 

26  Processor  Technology   9,  49 

27  Quay    78,79 

28  Sharp  &  Associates    22 

29  SWTP   Cll 

30  SOROC   59 

31  Sphere   7 

32  Technical  Design  Labs    27 

33  Ultrabyte    CIV 

34  Vector  Electronics    80 

35  Vector  Graphics   35 

36  Wave  Mate   5 

37  Xybek   18 

*  Advertiser  requests  direct  contact. 


Information 
Inquiry 

Number  Page 

COMPUTER  RETAILERS 

38  Bits  &  Bytes,  Fullerton    66 

39  Bits  &  Bytes,  Phoenix   118 

40  Bits,  Bytes  &  Pieces   113 

41  Byte,  Inc   87 

42  Byte,  Pasadena,  CA   81 

43  Byte,  Tempe,  AZ   83 

44  Byte,  LI,  NY   84 

45  Computer  Components   76 

46  Computer  Enterprises    108 

47  Computer  Store,  Santa  Monica    67 

48  Computer  Mart  of  NY   66 

49  Computerists   90 

50  Disc  3   82 

51  People's  Computer  Shop   ,   127 

52  Sunshine  Computer   85 

53  Scientific  Research  Institute    57 


SURPLUS  STORES 


54  Atwood  Enterprises    103 

55  B  &  M  Communications   126 

56  Computer  Faire  

57  Data  IV   97 

58  Digikey   102 

59  Integrated  Circuits    109 

60  Quest   84 

61  S.  D.Sales   123 

62  Semi-Comp   117 


CAST  YOUR  VOTE 

The  authors  in  this  issue  would  like  to  know  your  feelings  as  to  which  article 
you  consider  the  best.  You  may  cast  your  vote  on  each  article  or  only  one, 
which  ever  you  prefer.  The  articles  are  graded  on  point  scale  1  (lowest)  to  10 
(highest).  At  the  end  of  the  voting  period  all  votes  will  be  tallied  and  the  highest 
scoring  article  will  be  announced  and  the  author  will  receive  $100  bonus. 

NOTE:  Use  Original  "Voting  and  Reader  Service  Card"  only.  Any  other  form  is  not  acceptable. 

READER  SERVICE  VOTING  NUMBER 


ARTICLE  lowest  highest 

8080  Octal  Monitor  Program   151       —  160 

By  Thomas  Doyle 

Legion:  An  Experiment  in  Artificial  Intelligence   161       —  170 

By  Marlin  Ellers 

MicrocomputerStock  Options   171       —  180 

By  Edward  Christianson 

Warp  Factors   181       —  190 

By  Tom  Mazur 

Building  A  12-Bit  AID  Converter   191       —  200 

By  Roger  Brown 

Computer  Coupling  To  Teletype  Loops   201       —  210 

ByB.  D.  Lichtenwalner 

The  Black  Box   211       —  220 

By  Ken  Pugh 

Need  A  Better  Random  Number   221       —  230 

By  Robert  Martin 

Basic  Algorithms  For  Common  Math  Functions   231       —  240 

By  Michael  Burton 


NEXT  MONTH  ANNOUNCEMENT  OF  DECEMBER'S  BEST  AUTHOR  WINNER. 


128  INTERFACE  AGE 


FEBRUARY  1977 


READER  SERVICE  CARD 


% 


> 
I 


c 

'w 


a> 
a 


< 

CD 
C 

o 

-C 

Q_ 


CD 


E 
o 
x 

□ 


CO 

a. 
E 

o 
O 


g. 

N 


o 
O 


CO 


O  a! 


>  CT>  O)  CD  OJ  0>  O 
jntDCORllOCD 
'-'-'-CVJCMCVJCMCOCOCO 


cviinaj'-^NOrjd 

COCOCOCOCOCOCDCCCI 


CM  lf>  CD  *-  « 


.  _  OJ  CM  m  (D 
'-CMCMCVJCMCOCOCO 

iflioininminmm 


'-'-'-CMC 


3  CO  S  S  CM  S  3 
J  CM  CM  CM  CO  CO  CO 


T—  T—  T—  C\J  c 
CMCMCMCMCMCMCMC 
'-'-'-  cm  c 


o  o  o  o  o  o 


o  o 

O  CO 
CM  CM 


o  o  o  o  o 
id  oi  cm  m  m 

CVI  CM  CO  CO  CO 
CD  CT>  C7>  O)  CD 

inco'-f  n 

CM  CM  CO  CO  CO 


'-TNOP3CD(3)CMinoO'-'f 


*-  CM 

§>  CM  5?  CO  ™  5  S 
CM  CM  CM  CO  CO  CO 


soncoc 


3  CO  CO 

r  r*-  o 


co  to 
CO  co 


3  CO  CO  CO  CO  CD 
3  O  CM  Ifl  CO 

-  t-  CM  CM  CM  CO 

5  in  in  in  m  in 

3  03  CM  m  CO  »"~ 

-  ^—  CM  CM  CM  CO 

SSwino* 

-  »—  CM  CM  CM  CO 
CO  CO  CO  CO  CO 


CM  CM  CM  CM  C 


.  oncooiwmcO'- 

t-  —  ^-i—  CMCMCMCO 


'—-  ncocncMinoD'-'Th 

CO  '-'-  -CMCMC 

E 
o 
c 

"D 
c 
CD 


3  CO  CO 

3  *-  tr 

-  CM  CM 

3  to  m 

D  *- 

-  CM  CM 


"  ^  5  ' 

co  to  o>  c 

CO  CO  CO  CO  c 


co  to  o>  CM  in  CD  7- 

CM  CM  CM  CM 
CO  CO  03 


CM  CM 
CO  CO 
CM  CM 
CM  CVJ 
— 

CM  CM 


i  1 


CO  CO 

<S  r° 

co  co 

T  T 

CO  CO 
CO  CO 
CO  CO 
CM  CM 

-'-'-'-CMCMCMCOCOCO 


ooooooooooooo 

'-VN.OCOlDCBCMincO'-tS 
t—  t—  t—  T-CMCMCMCOCOCO 
O)O>O>O)O>O>O>O>O>0)O>O>O> 

ncocncMincD'-WNOnco 

»-  •»—  —  CMCMCMCOCOCO 

^nSfflCMScoS^KOOCD 
*-  *-  CMCMCMCOCOCO 


□I 

=  s 

S  cn    £  *j 


to  co  co  to 
sonco 

CM  CO  CO  CO 


CM  CO  CO  CO 
*T  *T  T  «f 

N.  O  CO  ID 
CM  CO  CO  CO 
CO  CO  CO  CO 
SOP)  to 
CM  CO  CO  CO 
.  .  _  CM  CM  CM  CM 
CMinCD-TNOniD 
 CM  CO  CO  CO 


(Please  type  or  print) 

Name  - 


iiuicnrflLG 

February  1977  Issue  -  Void  after  April  30,  1977 
VOTING  CARD 


Title- 


Company 
Address  _ 


Phone  (A/Q_ 


□  Home 


City  . 


State_ 


Please  send  information  on  items  circled  below. 


.  Country. 


□  Business 
.Zip_  


3  4 

33  34 

63  64 

93  94 


95  96 


7  8 
37  38 
67  68 
97  98 

127  126 


9  10  11 
39  40  41 
69  70  71 
99  100  101 
m  130  131 


12  13 
42  43 
72  73 
102  103 
132  133 


14  15 
44  45 
74  75 
104  105 


16  17  18 
46  47  48 
76  77  78 
106  107  108 
136  137  138 


19  20  21 
49  50  51 
79  80  81 
109  110  111 
139  140  14  T 


151  15?  153  154  155  !56  157  156  159  16G 

161  162  163  164  165  166  167  1  68  169  1  70 

M:  ^2  173  174  175  m  177  176  T7&  ISO 

I?-  '!•':?  1*3  'Si  '35  '  7  '87  '2*  •?■•>  150 

191  192  193  194  195  196  1&7  V96  199  200 

20  T  2Q2  203  204  205  206  207  206  209  210 

2"  2":  2i: 

214  Z-15  216  217  2iB  219  220 

221  222  223  224  225  226  227  228  229  230 

231  232  233  234  235  236  237  238  239  240 

a: 

?44  ?J5  2h5  2-3  7  i!43  249  2 5 3 

25'  252  252  254  2fr.  22.6  257  255    :  •  ct 

2£.  252  2  52  2*4  2 -7  2-7  /'  '  .7:1  269  270 

r 

27.      J " "  r-, 

26 "i  2B2  283  584  265  286  287  2B8  2B9  290 

2-  7'"      :    .^7             .7-  . 

30  1  302  303  304  305  27  ii  7  s:i  2'JB  3!0 

211  y.?  312.314  315  316  317  318  3 '.9  320 

321  32?  322  224  32E  325  7'  22:  :29  7. 

331  332  333  334  335  336  337  338  339  340 

341  14 S       344  2-35  3«6  2-17  m  349  350 

351  252  351  354  355  355  357  358  359  350 

351  362  363  VA  i65  276  3-57  366  m-j  370 

371  372  372  374  275  176  377  2  73  379  330 

381  382  383  554  385  386  387  388  389  390 

22  23 
52  53 
82  83 
112  113 
I4j  t43 


24  25 
54  55 
84  85 
114  115 


26  27 
56  57 
86  87 
116  117 
US  147 


28  29  30 
58  59  60 
88  89  90 
118  119  120 
141  iifl  1SQ 


My  primiry  interests  are  in  Q  Hardware    Q  Software. 
I  am  b  []  HGbbyiti        Professional  Engrntar  Businessman. 

iruTcnraLi 

February  1977  Issue  -  Void  after  April  30, 1977 


(Please  type  or  print) 

Name  ,  


Title- 


Company 
Address  _ 


Phone  (A/C)_ 


City  - 


State. 


_  □  Home  □  Business 
Country  Zip  


Please  send  information  on  items  circled  below. 


s 

O 

U-E 

O"- 

<? 
o| 

_i  o 

<  h- 


O 

u 

X 
■D 

eo 
c 
m 
O 
O 

o 


N 

<0 


lS 


(—  z 

ft  UJ 

o  < 

CQ 
3 


a 


o 
o 

< 
O 

CD 

9 
s 

cc 

LU 
O 

CO 
CVJ 


LU 
LU 
LL 

o 


s  § 

■°  ri 

CO  CL 

Cl. 


o: 
O 

CO 
CO  W 


O 
O 


o 
a? 

o 


9 

E 


c 

CO 

a. 
E 
o 
a 


"D 

< 

CD 

E 
o 
x 


Q. 


o 

a 


0) 

00 
C 
O) 

CO 


O  Q 


1  2 
31  32 
61  62 
91  92 
121  122 
151  152 
181  182 
211  212 
241  242 
271  272 
301  302 
331  332 
361  362 


3  4 
33  34 
63  64 
93  94 
123  124 
153  154 
183  184 
213  214 
243  244 
273  274 
303  304 
333  334 
363  364 


5  6  7 
35  36  37 
65  66  67 
95  96  97 
125  126  127 
155  156  157 
185  186  187 
215  216  217 
245  246  247 
275  276  277 
305  306  307 
335  336  337 
365  366  367 


38  39 
68  69 
98  99 
128  129 
158  159 
188  189 
218  219 
248  249 
278  279 
308  309 
338  339 
368  369 


10  11 
40  41 
70  71 
100  101 
130  131 
160  161 
190  191 
220  221 
250  251 
280  281 
310  311 
340  341 
370  371 


12  13  14 
42  43  44 
72  73  74 
102  103  104 
132  133  134 
162  163  164 
192  193  194 
222  223  224 
252  253  254 
282  283  284 
312  313  314 
342  343  344 
372  373  374 


15  16 
45  46 
75  76 
105  106 
135  136 
165  166 
195  196 
225  226 
255  256 
285  286 
315  316 
345  346 
375  376 


17  18 
47  48 
77  78 
107  108 
137  138 
167  168 
197  198 
227  228 
257  258 
287  288 
317  318 
347  348 
377  378 


19  20  21 
49  50  51 
79  80  81 
109  110  111 
139  140  141 
169  170  171 
199  200  201 
229  230  231 
259  260  261 
289  290  291 
319  320  321 
349  350  351 
379  380  381 


22  23 
52  53 
82  83 
112  113 
142  143 
172  173 
202  203 
232  233 
262  263 
292  293 
322  323 
352  353 
382  383 


24  25 
54  55 
84  85 
114  115 
144  145 
174  175 
204  205 
234  235 
264  265 
294  295 
324  325 
354  355 
384  385 


26  27 
56  57 
86  87 
116  117 
146  147 
176  177 
206  207 
236  237 
266  267 
296  297 
326  327 
356  357 
386  387 


28  29  30 
58  59  60 
88  89  90 
118  119  120 
148  149  150 
178  179  180 
208  209  210 
238  239240 
268  269  270 
298  299  300 
328  329  330 
358  359  360 
388  389  390 


My  primary  interests  are  in      Hardware  Software. 
I  am  •  |   |  Hobvyist   O  Professional  Engineer    Q  Businessman. 


SUBSCRIPTION  APPLICATION  FORM 

PAYMENT  MUST  ACCOMPANY  FORM 

SUBSCRIPTION  FEE  per  year:  $10.00  U.S.,  $12.00  Canada/Mexico 

$  1 8.00  Foreign.  i  m  iwr-i     siar  - 

Make  check  payable  to:   II  \J  I  CHfifiJLG  Magazine 

P.O.  Box  1  234,  Cerritos,  CA  90701 


Name_ 


Title 


Company 


Home  Address 
C<ly  


.  State_ 


.  Country, 


_  Zip_ 


Date_ 


.  Signature 


FIRST  CLASS 
PERMIT  No.  18 

Cermos.Ca  90701 


BUSINESS    REPLY  MAIL 

NO  POSTAGE  STAMP  NECESSARY  IF  MAILED  IN  THE  UNITED  STATES 


Interface  Hotline 

P.O.  Box  1234 
Cerritos,  Ca.  90701 


first  class 

PERMIT  No.  18 
Cemtos.  Ca  90701 


O  _ 

2 :  b  % 
o  u 

y  cd  o 

n  o  (D 

io  ro  2. 

o  co  - 

O  CD 


o  


i  m 

o 

SO) 

to 
> 

^  m 

> 


n 

m 

5 

PERM 

Tl 

i 

o 

n 

r 
i» 

yi 

3 

s 

BUSINESS    REPLY  MAIL 

NO  POSTAGE  STAMP  NECESSARY  IF  MAILED  IN  THE  UNITED  STATES 


Interface  Hotline 

P.O.  Box  1234 
Cerritos,  Ca.  90701 


PLANNING  TO  MOVE? 

Let  us  know  8  weeks  in  advance  so  that  you  won't  miss  a 
single  issue  of  INTERFACE. 

Attach  old  label  where  indicated  and  print  new  address  in 
space  provided.  Also  includeyourmailing  label  whenever  you 
write  concerning  your  subscription.  It  helps  us  serve  you 
promptly. 

If  you  have  no  label  handy,  print  OLD  address  here. 


Name 


E  E 


I*  3 

C  a?  *r> 

—  £  S 


*  E  o 

O  3  Q 


Is 


■a  ti  -a 
c  3  g 

uS 

D  3 

coo 

j  w  ^ 

_  <  cn 

flj     A  c 

ta  «  £ 
-  ^  « 

log 


a 

-i 
Q 


2 


2 
a 
o 


^  X  o  — 

«  a  -  i 

3  a  c  o 
<  m  £  a 


i 


LJJ 


1 


6 


O 

a  "1—1  o 

S|— S  8 

2  — «  CL  O 


Company 
Address 


City  Siaie 
Affix  Label  Print  NEW  address  here 


Zip  code 


Company 


Address 


Zip  code 


MAIL  COMPLETED  CARD  TO: 

ir\i7cnr«LG 

P.O.  Box  1234 
Cerritos,  California  90701 


Experience 

the  excitement  of  owning  the  world's 
finest  personal  computer  - 
IMSAI 8080 


w 

Th 

en 


Waiting  for  you  —  all  the  incredible 
performance  and  power  of  the 
IMSAI  8080.  And  at  a  price  you 
would  normally  pay  for  a  fine 
home  music  system. 
Introduced  less  than  two  years 
ago,  the  IMSAI  8080  is  sold  world- 
wide and  acknowledged  as  the 
finest  personal  computer  available. 

WORLD  OF  USES 
The  IMSAI  8080  is  a  superbly 
engineered,  quality  computer.  It  is 
ersatile,  expandable  and  power- 
kputting  literally  hundreds  of 


applications  and  uses  at  your 
fingertips.  Imagine  sitting  at  your 
desk  and  enjoying  interaction  with 
your  IMSAI  8080!  Press  the  on 
switch  and  you're  ready  for  game 
playing,  research,  education,  busi- 
ness applications,  or  for  laboratory 
instrument  control.  It  has  all  the 
power  you  need,  and  more,  to 
make  your  application  ideas  come 
alive. 

GROWS  WITH  YOU 
The  IMSAI  8080  is  designed  for 
many  years  of  pleasure.  With  its 
open -chassis  engineering  you  can 
expand  your  system  by  adding 
peripherals  and  interfaces.  The  22- 
slots  and  28  amp  power  supply 
mean  that  you  can  plug-in  today's, 
plus  tomorrows  modules. 


Right  now  you  can  add  a  module 
for  displaying  color  graphics  and 
characters  on  TV;  a  ready-to-use 
keyboard;  small  and  large  printers, 
and  a  single  interface  that  lets 
you  attach  multiple  devices  includ- 
ing a  cassette  tape  recorder.  Ex- 
pect the  latest,  exciting  equipment 
from  IMSAI.  We  are  committed 
to  leadership  in  this  expanding 
technology. 

EASY  TO  PROGRAM 
With  our  BASIC  language  you 
can  operate  the  IMSAI  8080 
quickly  and  easily.  Technically 
knowledgeable?  Use  our  assembly 
language  to  develop  sophisticated 
and  unique  software. 


If  you're  thinking  personal  computer, 
treat  yourself  to  the  very  best  — 
IMSf  I  8080 

Send  for  free  four-color  brochure 
or  $1  for  catalog.  CaLpr  write  for 
name  of  nearest  deal 


IMSAI 

IMSAI  Manufacturing  Corporation 

14860  Wicks  Blvd. 

San  Leandro.  CA  94577  Vi!**WB 

(415)483-2093 

TWX  910-366  7287 


European  Distributor 

Harper  industry  Products,  Ltd. 
6079  Sprendlingen  2 
West  Germany 


ULTRA  BYTE 

PRESENTS 


+  Z-80 


CPU  BOARD 


=  IMSAI  Z-80 


THAT'S  RIGHT!  THIS  ULTRA-POWERFUL  COMBINATION  IS  OFFERED  BY  ULTRABYTE, 
YOUR  FACTORY  AUTHORIZED  DEALER  OF  ALL  THESE  QUALITY  COMPONENTS 


PLEASE  RUSH  ME  THE  FOLLOWING: 

□  *  IMSAI  Z-80  Standard  Kit,  (without  Standard  CPU 

Board)  with  Powerful  TDL  ZPU  Board       .    .    .  $  820.00 

□  "Same  as  above  (IMSAI  plus  Z-80).  but  \ 

Mother  Board     $ 

□  IMSAI  8080  Kit.  Star           ...  .$ 

□  IMSAI  8080  Kit.  with  .  ,  .  $ 

□  Card  Guides,  20  pairs   ,  $ 

□  IMSAI  4K  Bytes  Static  Memor  .    ,  .      . ,  $ 

□  IMSAI  Multiple  I/O  Board.  Kit   $ 

□  TDL  4K  Expandable  Memory,  H 

(IMSAI/ULTAIR  Compatible*   .  .  .$ 

TDL  8K  Expandable  Memory   .  .  .$ 

TDL  1  6K  Memory     $ 

TDL  4K  Expansion  Kh       ,  .  .    ..   .  .$ 

TDL  ZPU  Card  (gives 
to  TDL  Software)  .     $ 

□  SEALS  8K  Board 

500  ns  Maximum   ,    $ 


225  ns  Maximum   

□  ICOM's  Microfloppy  Disk  System,  Including  Drive. 

Power  Supply.  Cabinet.  Controller/Interface 
Card,  Manuals.  Diskette  &  Software  ..... 

□  ICOM's  Frugal  Floppy,  including  Disk  Drive, 

CF  360  Controller,  all  Cables  and  Connectors  .  . 

□  ICOM's  Frugal  Floppy,  same  as  above,  but  with 

Dual  Disk  Drive  ,  

SUB  TOTAL 


PRICES  SUBJECT  TO  CHANGE  W  ITHOUT  NOTICE 


$ 


.$ 


880.00 
599.00 
660.00 
20.00 
129.00 
180.00 

159.00 
279.00 
549.00 
135.00 

259.00 

255.00 
280.00 


$1 


$1 


895.00 
129.00 
749.00 


*PHONE  IN  YOUR  CREDIT  CARD  ORDERS 
*CALIF.  RES.  ADD  6%  SALES  TAX 
*MOST  ORDERS  SHIPPED  WITHIN  30  DAYS 
♦SHIPPING  CHARGE:   COLLECT  F.O.B.  FACTORY 

Enclosed  Check  or  Money  Order 
For  i  


Bankamericard  No., 
Mastercharge  No.  _ 

Interbank  No.   

Signature:  


Name: 


Address: 


City,  State,  Zip: 


UltraByte  Incorporated 

P.O.  Box  370,  Westminster,  CA.  92683 

(714)  892-4679 

Executive  Offices: 

Park  Plaza  Building,  Suite  8 

17281  Plaza  Street,  Westminister,  CA.  92683 

(Send  Self -addressed,  stamped  envelope  for  complete 

computer  accessory  list  ) 


ARTWORK  COURTESY  OF  GO  FOR  IT  GRAPHICS  ,  BOX  532,  MANHATTAN  BEACH,  CA  90266 

CIRCLE  INQUIRY  NO.  33